1084:幂的末尾
【题目描述】
幂ab的末3位数是多少?
【输入】
两个正整数a,b。1≤a≤100,1≤b≤10000。
【输出】
从高位到低位输出幂的末三位数字,中间无分隔符。若幂本身不足三位,在前面补零。
【输入样例】
7 2011
【输出样例】
743
这道题的位数问题与T1082求小数的某一位思路相同
#include<iostream>
using namespace std;
int main()
{
int a,b,k=1;
cin>>a>>b;
for(int i=1;i<=b;i++)
{
k*=a;//k*a的i次结果
k%=1000; //排除千位数往上的数字,k存储后三位
}
if(k>=100) cout<<k<<endl;//结果为三位的情况
else if(k>=10) cout<<"0"<<k<<endl;//结果为两位的情况
else cout<<"00"<<k<<endl;//结果为一位的情况
return 0;
}