HDU 1061 Rightmost Digit

题目链接

题意 : 求n的n次方的个位数是多少。

思路 : 自己写一下看一下规律,会发现0,1,5,6的个位数怎么乘都是原来这个数,剩下的数也还是有规律。

 1 #include <stdio.h>
 2 #include <iostream>
 3 #include <string.h>
 4 
 5 using namespace std ;
 6 
 7 int a[10][4] = {{0},{1},{6,2,4,8},{1,3,9,7},{6,4},{5},{6},{1,7,9,3},{6,8,4,2},{1,9}} ;
 8 
 9 int main()
10 {
11     int T,n ;
12     scanf("%d",&T) ;
13     while(T--)
14     {
15         scanf("%d",&n) ;
16         int s = n ;
17         n %= 10 ;
18         if(n == 0 || n == 1 || n == 5 || n == 6)
19             printf("%d\n",a[n][0]) ;
20         else if(n == 2 || n == 3 || n == 7 || n == 8)
21             printf("%d\n",a[n][s%4]) ;
22         else if(n == 4 || n == 9)
23             printf("%d\n",a[n][s%2]) ;
24     }
25     return 0 ;
26 }
View Code

 

HDU 1061 Rightmost Digit,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。