Leftmost Digit HDU 1060

Leftmost Digit

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 11062    Accepted Submission(s): 4228

Problem Description
Given a positive integer N, you should output the leftmost digit of N^N.
 

Input
The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow. Each test case contains a single positive integer N(1<=N<=1,000,000,000).
 

Output
For each test case, you should output the leftmost digit of N^N.
 

Sample Input
 
  
2 3 4
 

Sample Output
 
  
2 2

#include <cstdio>
#include <iostream>
#include <cmath>
using namespace std;
int main(){
 int n,m;long long b;
    double sum,a;
    scanf("%d",&m);
    while(m--)
    {
        scanf("%d",&n);
        a=n*log10(n/1.0);b=(long long)a;
        sum=pow(10.0,(a-b));
        printf("%d\n",(int)sum);
    }
return 0;
}

猜你喜欢

转载自blog.csdn.net/u011582187/article/details/11111369