HDU 6182 A Math Problem
暴力。
$k$的$k$次方在$k=15$的时候,达到了最大不爆掉的情况。
#include<bits/stdc++.h> using namespace std; long long ans[20]; long long n; long long get(long long x) { long long res = 1; long long t = x; while(x) { res = res * t; x --; } return res; } int main() { for(long long i = 1; i <= 15 ; i ++) { ans[i] = get(i); } while(~scanf("%lld", &n)) { int sum = 0; for(int i = 1; i <= 15; i ++) { if(ans[i] <= n) { sum ++; } } printf("%d\n", sum); } return 0; }