欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

NYOJ 633 幂

发布时间:2025/3/16 编程问答 38 豆豆
生活随笔 收集整理的这篇文章主要介绍了 NYOJ 633 幂 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述
在学习循环的时候,我们都练习过利用循环计算a的k次方。现在给定整数k和一个整数m,请你求出对应的整数a,使得a的k次方是不超过m并且最接近m的数值。  输入
一个整数T表示测试组数。
对于每组测试数据:
给定两个整数k和m 

数据范围:
1 <= T <= 20
1 <= k <= 10^9
0 <= a <= 10^9
0 <= M <= 10^100
输出
对于每组数据,输出一个整数a占一行。
样例输入
2 2 4 3 27
样例输出
2 3
思路:通过pow(10,log10(m)/k)先求出一个已相当接近m的近似值a,然后再逐渐增加a,得解!
另外:后台数据M的值的范围是[0,10^100]?
AC码:
#include<stdio.h> #include<math.h> int main() {double k,m;int T;scanf("%d",&T);while(T--){scanf("%lf%lf",&k,&m);int a=pow(10,log10(m)/k);while(pow(a+1,k)<=m)++a;printf("%d\n",a);}return 0; }

总结

以上是生活随笔为你收集整理的NYOJ 633 幂的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。