#A. 乘方

    Type: Default File IO: pow 1000ms 256MiB

乘方

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

小文同学刚刚接触了信息学竞赛,有一天她遇到了这样一个题:给定正整数 aabb,求 aba^b 的值是多少。

aba^bbbaa 相乘的值,例如 232^3 即为 3322 相乘,结果为 2×2×2=82 \times 2 \times 2 = 8

“简单!”小文心想,同时很快就写出了一份程序,可是测试时却出现了错误。

小文很快意识到,她的程序里的变量都是 int 类型的。在大多数机器上,int 类型能表示的最大数为 23112^{31} - 1,因此只要计算结果超过这个数,她的程序就会出现错误。

由于小文刚刚学会编程,她担心使用 int 计算会出现问题。因此她希望你在 aba^b 的值超过 109{10}^9 时,输出一个 -1 进行警示,否则就输出正确的 aba^b 的值。

然而小文还是不知道怎么实现这份程序,因此她想请你帮忙。

输入格式

输入共一行,两个正整数 a,ba, b

输出格式

输出共一行,如果 aba^b 的值不超过 109{10}^9,则输出 aba^b 的值,否则输出 -1

样例 #1

样例输入 #1

10 9

样例输出 #1

1000000000

样例 #2

样例输入 #2

23333 66666

样例输出 #2

-1

提示

对于 10%10 \% 的数据,保证 b=1b = 1。 对于 30%30 \% 的数据,保证 b2b \le 2。 对于 60%60 \% 的数据,保证 b30b \le 30ab1018a^b \le {10}^{18}。 对于 100%100 \% 的数据,保证 1a,b1091 \le a, b \le {10}^9

upd 2022.11.14\text{upd 2022.11.14}:新增加一组 Hack\text{Hack} 数据。

0815

Not Attended
Status
Done
Rule
OI
Problem
4
Start at
2024-8-15 14:00
End at
2024-8-15 17:30
Duration
3.5 hour(s)
Host
Partic.
25