社区讨论

为什么我觉得题解过于复杂了

P8813[CSP-J 2022] 乘方参与者 9已保存回复 11

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
11 条
当前快照
1 份
快照标识符
@lo3j1kd1
此快照首次捕获于
2023/10/24 07:26
2 年前
此快照最后确认于
2023/10/24 07:26
2 年前
查看原帖
CPP
#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;
}

回复

11 条回复,欢迎继续交流。

正在加载回复...