码迷,mamicode.com
首页 > 其他好文 > 详细

NYOJ 633 幂

时间:2014-05-04 18:44:58      阅读:296      评论:0      收藏:0      [点我收藏+]

标签:#includestdio.h #inc   m int t scanfd   t whilet--   

时间限制: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]?bubuko.com,布布扣
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 幂,布布扣,bubuko.com

NYOJ 633 幂

标签:#includestdio.h #inc   m int t scanfd   t whilet--   

原文地址:http://blog.csdn.net/u012804490/article/details/24978843

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!