1063 - N的N次方

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 32 MB

现给你一个正整数N,请问N^N的最左边的数字是什么?

题目输入

输入包含多组测试数据。每组输入一个正整数N(N<=1000000)。

题目输出

对于每组输入,输出N^N的最左边的数字。

输入/输出样例

输入格式

3
4

输出格式

2
2

C语言解答

#include<stdio.h>
#include<math.h>

int main()
{
	int n;
	while(scanf("%d",&n)!=EOF)
		printf("%d\n",(int)pow(10,n*log10(n)-(int)(n*log10(n))));
	return 0;
}

C++解答

#include<stdio.h>
#include<math.h>

int main()
{
	int n;
	while(scanf("%d",&n)!=EOF)
		printf("%d\n",(int)pow(10,n*log10(n)-(int)(n*log10(n))));
	return 0;
}

Java解答

public class Main {
            public static void main(String[] args) { 
              java.util.Scanner input = new java.util.Scanner(System.in) ;
              while(input.hasNextInt()){
                  int n =input.nextInt();
                  double x = n*Math.log10(n);
                  double m = x-(int)x;
                  int m1=(int)Math.pow(10,m);
                  System.out.println(m1);
                }
            }
        }

Python解答

from math import *

while True:
    try:
        n = int(raw_input())
        print int(modf(10**(modf(n*log10(n))[0]))[1])
    except:
        break