HDOJ 1061 Rightmost Digit(快速幂)
来源:互联网 发布:java项目开发实录 编辑:程序博客网 时间:2024/05/21 17:21
Rightmost Digit
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).
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
234
Sample Output
76
解题思路:快速幂,由于要求N ^ N个位数上的结果,所以可以求(N % 10) ^ N,再将结果对10取余即可。
代码如下:
#include <cstdio>typedef long long ll;ll mod_pow(ll x,ll n,ll mod){ll res = 1;while(n > 0){if(n & 1)res *= x % mod;x = x * x % mod;n >>= 1; }return res;}int main(){int t;ll n;scanf("%d",&t);while(t--){scanf("%lld",&n);printf("%d\n",mod_pow(n % 10,n,10) % 10);}return 0;}
0 0
- HDOJ 1061 Rightmost Digit(快速幂)
- ACM--快速幂--HDOJ 1061--Rightmost Digit
- HDOJ 1061 Rightmost Digit(快速幂求模)
- hdu 1061 Rightmost Digit(快速幂)
- HDU 1061 Rightmost Digit(快速幂)
- HDU 1061 Rightmost Digit(快速幂)
- HDU 1061 Rightmost Digit (快速幂)
- 【HDU】1061 - Rightmost Digit(快速幂)
- 【hdu 1061】Rightmost Digit(快速幂)
- Rightmost Digit(快速幂)
- HDOJ 1061: Rightmost Digit
- hdoj 1061Rightmost Digit
- HDOJ 1061 Rightmost Digit
- HDOJ 1061 Rightmost Digit
- hdoj 1061 Rightmost Digit
- HDOJ 1061 - Rightmost Digit
- HDOJ--1061--Rightmost Digit
- HDOJ 1061Rightmost Digit
- 非法字符: '\ufeff' 解决方案(Android Studio)
- c语言==函数(11)
- 数据库分库分表中间件
- windows7下安装memcached,memcached安装
- Android第一周(第三部分)
- HDOJ 1061 Rightmost Digit(快速幂)
- HIVE时间处理常用函数
- js实现打字机效果
- 西蒙iphone-OpenGL ES 教程-02 : 绘制矩形
- mysql在MAC安装时忘记初始随机密码的解决办法
- 如何在Qt中写自己的静态连接库
- Android中四大组件(四大天王)
- 函数
- iOS中Cookie介绍