标签:
#include<cstdio> #include<cmath> using namespace std; int main() { long long begin,end,mid,k; long long n,m; begin = 1;end = 100000000; scanf("%d%d",&n,&m);//要使得什么的n次方为m while(begin <= end){ mid = (begin + end) >> 1; k = pow(mid , n); if(k < m) begin = mid; else if(k > m) end = mid; else { printf("%lld",mid); break; } } return 0; }
不断改变begin,end的值不断靠近要求的东西。
二分的复杂度为log2n。
标签:
原文地址:http://www.cnblogs.com/zero-begin/p/4350005.html