2218: 技巧类数学题——PowerOj

Description
求n^n的最高位
Input
多组数据输入,每组输入一个数n
n的范围很大,但是不超过int
Output
输出n^n的最高位是什么
Sample Input
Raw

3
4
Sample Output
Raw

2
2
Hint
3^3=27最高位为2
4^4=256最高位还是2


解题思路:学会用对数解决指数问题
在这里插入图片描述
A+1就是n^n的位数
10A* 100.B=nn求最高位的数,我们去掉10A就可以了

#include<iostream>
#include<cmath>
#include<stdio.h>
using namespace std;
int main()
{
     double a;
     int b;
     while(scanf("%lf",&a)!=EOF)
     {
         a=a*log10(a);
        printf("%d\n",(int)pow(10.0,a-(long long)a)); 
     }
 return 0;
}
发布了36 篇原创文章 · 获赞 10 · 访问量 1919

猜你喜欢

转载自blog.csdn.net/weixin_44003265/article/details/101712376
今日推荐