当前位置: 代码迷 >> 综合 >> HOJ 1061 Rightmost Digit(快速幂,水题)
  详细解决方案

HOJ 1061 Rightmost Digit(快速幂,水题)

热度:98   发布时间:2023-12-13 19:20:03.0

快速幂,水题
本题要点:
1、快速幂,mod = 10, 首先把 base 模 mod 一下。

#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
const int mod = 10;
int T, n;int fastPow()
{
    int base = n % mod, res = 1;while(n){
    if(n & 1){
    res = (res * base) % mod;}base = (base * base) % mod;n >>= 1;}return res;
}int main()
{
    scanf("%d", &T);while(T--){
    scanf("%d", &n);printf("%d\n", fastPow());}return 0;
}/* 2 3 4 *//* 7 6 */