📄 1221.cpp
字号:
/* This Code is Submitted by wywcgs for Problem 1221 on 2005-10-03 at 00:28:10 */
#include <stdio.h>
#include <math.h>
int main()
{
double power;
long long total, r;
int p, sign, i;
while(scanf("%lf", &power) == 1) {
if(fabs(power) < 1e-1) {
return 0;
}
sign = 0;
if(power < 1e-1) {
sign = 1;
power = -power;
}
if(sign == 0) {
for(p = 32; p >= 2; p--) {
r = (long long)(pow(power, (double)1/p)+1e-5);
total = 1;
for(i = 0; i < p; i++) {
total *= r;
}
if(fabs(total - power) < 1e-1) {
break;
}
}
} else {
for(p = 31; p >= 2; p -= 2) {
r = (long long)(pow(power, (double)1/p)+1e-5);
total = 1;
for(i = 0; i < p; i++) {
total *= r;
}
if(fabs(total - power) < 1e-1) {
break;
}
}
}
printf("%d\n", p);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -