码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2016-07-22 21:05:42      阅读:182      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!