首页 > Web开发 > 详细

Rightmost Digit (求n^n最后一位)

时间:2016-07-22 21:04:11      阅读:137      评论:0      收藏:0      [点我收藏+]

Description

Given a positive integer N, you should output the most right 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 rightmost digit of N^N. 
 

Sample Input

2 3 4
 

Sample Output

7 6

Hint

In the first case, 3 * 3 * 3 = 27, so the rightmost digit is 7. In the second case, 4 * 4 * 4 * 4 = 256, so the rightmost digit is 6.

 

n^n最后一位,等价于(n%100)^(n%100)的最后一位。

 1 #include<cstdio>
 2 int main()
 3 {
 4     __int64 t,l,b;
 5     scanf("%I64d",&t);
 6     while(t--)
 7     {
 8         __int64 n;
 9         scanf("%I64d",&n);
10             l=n%100;
11             b=l;
12             for(__int64 i=1;i<l;i++)
13             {
14                 b=b*l;
15                 b%=100;
16             }
17             b%=10;
18             printf("%I64d\n",b);
19     }
20 }

 

Rightmost Digit (求n^n最后一位)

原文:http://www.cnblogs.com/yexiaozi/p/5696248.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!