您的位置:首页 > 其它

51NOD 1004 n^n的末位数字

2016-05-26 17:45 381 查看
链接: https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1004


1004 n^n的末位数字

题目来源: Author Ignatius.L (Hdu 1061)

基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题


关键词: 快速幂模


Description

给出一个整数N,输出N^N(N的N次方)的十进制表示的末位数字。


Input

一个数N(1 <= N <= 10^9)


Output

输出N^N的末位数字


SampleInput

13


SampleOutput

3


Hint


Source


Analyze

这个是个 快速幂模 的模板题


Code

#include <cstdio>
#include <algorithm>
#include <iostream>
#include <cstring>
using namespace std;

#define LL long long
LL mod_pow(LL a, LL b, LL p)
{
LL ans = 1;
while(b > 0)    {
if(b & 1) ans = (ans * a )  % p;
a = (a * a) % p;
b >>= 1;
}
return ans;
}
int main()
{
LL n;
while(cin>>n)
{
cout << mod_pow(n, n, 10) << endl;
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: