nefu604X的尾巴 快速幂取模

开始寻思半天是什么算法==原来是这货==注意答案开头有0的处理 机智如我

description

<tt>
求出X^X(X的X次方)后四位的数值。</tt>

input

<tt>
测试数组有多组,每行输入一个整数x,(1&lt;=x&lt;=100000000)</tt>

output

<tt>
对于每次输入,对应输出相应x的后四位数,每个输出占一行。</tt>

sample_input

<tt>
1
2
3
10</tt>

sample_output

<tt>
1
4
27
0000</tt>
#include <iostream>
#include<cstdio>
using namespace std;
long long quickmod(long long a,long long b)
{
     long long ans=1;
     while(b)
     {
          if(b&1)
          {
               ans=(ans*a)%10000;
          }
          b/=2;
          a=a*a%10000;
     }
     return ans;
}
int main()
{
    long long x;
    while(~scanf("%lld",&x))
    {
         if(x==0) printf("0\n");
         else
         {
         long long ans=quickmod(x,x);
         if(x<6) printf("%lld\n",ans);
         else printf("%04lld\n",ans);
         }

    }
    return 0;
}


全部评论

相关推荐

07-02 13:52
武汉大学 golang
骗你的不露头也秒
牛客87776816...:😃查看图片
点赞 评论 收藏
分享
点赞 评论 收藏
分享
06-26 15:33
青岛工学院 Java
积极的秋田犬要冲国企:他现在邀请我明天面试
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-02 15:39
希望奇迹发生的布莱克...:真的是 现在卷实习就是没苦硬吃
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务