Problem:
Score : 200 points

Problem Statement

You are given a positive integer X.
Find the largest perfect power that is at most X.
Here, a perfect power is an integer that can be represented as b^p, where b is an integer not less than 1 and p is an integer not less than 2.

Constraints

1 ≤ X ≤ 1000

X is an integer.

Input

Input is given from Standard Input in the following format:

X

Output

Print the largest perfect power that is at most X.

Sample Input 1

10

Sample Output 1

9

There are four perfect powers that are at most 10: 1, 4, 8 and 9.
We should print the largest among them, 9.

Sample Input 2

1

Sample Output 2

1

Sample Input 3

999

Sample Output 3

961

Solution in C# (Mono 4.6.2.0) (judge verdict: Wrong Answer)

using System;
using System.Linq;
public class Hello{
    public static void Main()
    {
        // Your code here!
        
        int X = int.Parse(Console.ReadLine());
        int save = 1;
        
        if(X == 1) 
        {
            Console.WriteLine(1);
            return;
            
        }
        
        
        for(int i = 2; i <= Math.Sqrt(X); i++)
        {
            int a = i * i;
            
            while(a < X)
            {
                
                if(a == X)
                {
                    Console.WriteLine(a);
                    return;
                }
                else if(a < X)
                {
                    a = a * i;
                }
                
               
            }
                a = a / i; //超えたとき
               
                if(a > save)
                {
                    save = a;
                    
                    
                }
               
            
        }
        
        Console.WriteLine(save);
        
    }
}