比赛 CSP2022普及组 评测结果 AAAAAAAAAA
题目名称 乘方 最终得分 100
用户昵称 Lfc_HeSn 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2022-10-29 14:58:27
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
#define int long long
int power(int x, int n) {
	if(n == 1) {
		return x;
	}
	if(n == 0) {
		return 1;
	}
	int p = power(x, n / 2);
	if(p > (int)1e9) {
		cout << -1;
		exit(0);
	}
	if(n % 2 == 0) {
		return p * p;
	}
	else {
		return p * p * x;
	}
}
signed main() {
	freopen("csp2022pj_pow.in", "r", stdin);
	freopen("csp2022pj_pow.out", "w", stdout);
	int a, b, c;
	cin >> a >> b;
	if((a >= 10 && b >= 10) || (a != 1 && b > 30)) {
		cout << -1;
		return 0;
	}
	c = power(a, b);
	if(c > (int)1e9) {
		c = -1;
	}
	cout << c << endl;
	return 0;
}