描述
a^b的末3位数是多少?
格式
输入格式
两个正整数a,b。1≤a≤100,1≤b≤10000。
输出格式
从高位到低位输出幂的末三位数字,中间无分隔符。若幂本身不足三位,在前面补零。
样例
输入样例
7 2011
输出样例
743
限制
时间限制: 1000 ms
内存限制: 65536 KB
#include <stdio.h>
// 要点: 当幂数大于1000时 前面的位数对于 后三位没有影响 直接取余 减少运算数大小
int main()
{
int a,b,i = 1,k = 1;
scanf("%d %d",&a,&b);
for(i;i<=b;i++){
k *= a;
k %= 1000;
}
if(k<10) printf("00%d",k);
else if(k<100) printf("0%d",k);
else printf("%d",k);
return 0;
}