HDU 1061 Rightmost Digit
2015-07-18 22:15
459 查看
Problem 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.
快速幂
#include<cstdio> #include<queue> #include<stack> #include<cstring> #include<vector> #include<map> #include<iostream> #include<algorithm> #include<functional> using namespace std; int main() { int n,T; cin>>T; while (T--) { cin>>n; int i,j,k; for (i=n,j=n%10,k=1;i;i>>=1) { if (i&1) k=k*j%10; j=j*j%10; } cout<<k<<endl; } return 0; }
相关文章推荐
- 写在课程设计之后
- MAC Objective-C 开发经典书籍推荐
- jQuery知识点总结(第一天)
- C++ string详解
- linux系统网络命令(六)
- Tomcat安装配置
- 二分图判定 hdu5285 wyh2000 and pupil
- JAVA基础_简析Java中的new,this,super,final关键字
- 剑指off-归并两个有序链表
- Android手机开机自动启动
- MyBatis知多少(11)企业数据库
- CodeForces 402B
- OC学习笔记之C语言字符串处理(非指针版)
- Introduction to Monoids and Semigroups with Spark
- Android enum(枚举类型)使用详解
- 在QT5中设置应用程序图标
- 实习14天
- sublime使用总结
- HDU 2157 How many ways??
- Android平台基本架构及Dalvik概述