#include<stdio.h>
#include<math.h>
int main()
{
double n,p;
while(~scanf("%lf%lf",&n,&p))
{
printf("%.0lf\n",pow(p,1/n));
}
return 0;
}
看了别人的代码, 二分+高精度的,以后遇到这种问题(大范围的题),就提醒了我要首先想到用 二分算法来缩小数据范围
或许这题用这个函数也是恰巧过了,所以还是要看看库函数里面我们常用的函数是怎么实现的。
#include<stdio.h>
#include<math.h>
int main()
{
double n,p;
while(~scanf("%lf%lf",&n,&p))
{
printf("%.0lf\n",pow(p,1/n));
}
return 0;
}
或许这题用这个函数也是恰巧过了,所以还是要看看库函数里面我们常用的函数是怎么实现的。