26 lines
620 B
C++
26 lines
620 B
C++
|
|
#include <bits/stdc++.h>
|
|||
|
|
|
|||
|
|
using namespace std;
|
|||
|
|
typedef long long LL;
|
|||
|
|
int main() {
|
|||
|
|
|
|||
|
|
freopen("pow.in", "r", stdin);
|
|||
|
|
freopen("pow.out", "w", stdout);
|
|||
|
|
|
|||
|
|
LL a, b, res = 1;
|
|||
|
|
cin >> a >> b;
|
|||
|
|
//需要对a==1进行特判,否则肯定会TLE一个点,为啥呢?因为b的范围!它是<=1e9!如果a是1,会空跑1e9次!
|
|||
|
|
if (a == 1) {
|
|||
|
|
printf("%d\n", 1);
|
|||
|
|
exit(0);
|
|||
|
|
}
|
|||
|
|
for (LL i = 1; i <= b; i++) {
|
|||
|
|
res *= a;
|
|||
|
|
if (res > 1e9) {
|
|||
|
|
printf("%d\n", -1);
|
|||
|
|
exit(0);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
printf("%lld\n", res);
|
|||
|
|
return 0;
|
|||
|
|
}
|