二分过的,注意对整数二分的时候,if判断要有=号,找了好长时间,自己都忘了。。

MDK | 2109 | Accepted | 736K | 32MS | G++ | 1644B | 2011-11-06 21:18:20 |
int n;
double p;
double cal(int x) {
return pow(x,n);
}
int main () {
while(~scanf("%d %lf",&n,&p)) {
int ans;
int L = 1,R = 1000000000;
while(L <= R) {
int mid = (L + R)/2;
//DB(mid);
//DB("---"<<cal(mid));
if(cal(mid)<= p) {
ans = mid;
L = mid + 1;
} else {
R = mid - 1;
}
}
PCFLN(ans);
}
}