頭良くなりたい人

文系大学生shadeのブログです。競技プログラミングや人文学の話題,受験ネタなど。

ABC097 B - Exponential

問題はこちら atcoder.jp

方針

1 \leq X \leq 1000 なので普通にループを回しています。

コード

#include <bits/stdc++.h>
using namespace std;

int main(){
    int x;
    cin>>x;
 
    int ans=1;
    for(int i=2; i<=sqrt(x); i++){
        for(int j=2; j<1000; j++){
            if(pow(i,j)>x){
                break;
            }
            if(pow(i,j)>ans){
                ans=pow(i,j);
            }
        }
    }
 
    cout<<ans<<endl;
}