【程序设计基础/C++】幂的末尾

题目描述

幂a^b的末三位数是多少?

输入

两个正整数a,b (1<=a<=100, 1 <= b <= 10000)

输出

从高位到低位输出幂的末三位数字,中间无分隔符。若幂本身不足三位,在前面补0

样例输入

7 2011

样例输出

743

代码实现:

这种题先输出符号位,倒序输出就模一下输出一位,顺序输出就模一次就输出;如果缺空补0就判断一下大小,先输出0位。

#include<iostream>
#include<iomanip>
#include<cmath>
#include<cstring>
#include<vector>
#define INF 0x3f3f3f3f
using namespace std;

int main(){
    int a,b;
    long long n=1;
    cin>>a>>b;
    
    for(int i=1;i<=b;i++){
    	n*=a;
    	n%=1000;
	}
	if(n<100){
		if(n<10){
			cout<<"0";
		}
		cout<<"0";
	}
	cout<<n;
}

版权声明:本文为Dy242600原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。