基础练习:T1084:幂的末尾

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;
}

猜你喜欢

转载自blog.csdn.net/qq_43886420/article/details/85036743