1. 程式人生 > >51nod 1004 n^n的末位數字

51nod 1004 n^n的末位數字

sca n) spa div class print nbsp bsp int

求n的n次方的末尾數字

大概都知道暴力 模擬一下 但是 N 是10^9級別的 會T

所以用 快速冪 要是求n的階乘就不行了呢

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int mod = 10;
int  _pow(ll x,ll n)
{
    int res = 1;
    while (n > 0)
    {
        if(n & 1) res = res * x %mod;
        x = x * x %mod;
        n 
>>=1; } return res; } int main () { int n; scanf("%d",&n); printf("%d\n",_pow(n,n)); }

51nod 1004 n^n的末位數字