概述:给定两个数字,n,p,求一个k,使得n的k次方等于p。
思路:k的n次方等于p,反过来想,p的n分之一次方就是k。
感谢:看到这道题的时候,第一反应就是用for循环,设定一个数从0开始求n次方,直到为所求的p值,但是,不出所料,果然超时,就转换了下方法。
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double n, p, k;
while (cin >> n >> p)
{
k = pow(p, 1 / n);
cout << k << endl;
}
return 0;
}