为什么我觉得题解过于复杂了
查看原帖
为什么我觉得题解过于复杂了
733367
Anatomix楼主2022/12/17 14:40
#include <bits/stdc++.h>
using namespace std;
int main(){
	long long int a,b,cnt=1;
	scanf("%lld%lld",&a,&b);
	if((a==1 || b==0)){ //特判
		printf("1");
	}
	else if((a>=2 && b>31)){ //因为2的31次方大于10的9次方了
		printf("-1");
	}
	else{
		for(int i=1;i<=b;i++){
			cnt=a*cnt;
			if(cnt>1e9){
				printf("-1");
				return 0;
			}
		}
		printf("%lld",cnt);
	}
	return 0;
}
2022/12/17 14:40
加载中...