2 条题解
-
0
CSP-J 2022 乘方 题解
题目大意
给定正整数 (a,b),计算 (a^b)。 若 (a^b ≤ 10^9),输出 (a^b);否则输出
-1。 数据范围:(1 ≤ a,b ≤ 10^9)。代码
#include <bits/stdc++.h> using namespace std; int main () { int a, b; cin >> a >> b; if (pow(a, b) > 1e9) cout << -1; else printf("%.0lf", pow(a, b)); return 0; }代码思路说明
- 读入两个整数 (a,b);
- 使用
pow()函数计算 (a^b),pow返回浮点数; - 判断结果是否大于 (10^9):
- 如果大于:输出
-1; - 如果不大于:用
printf("%.0lf")将浮点数保留 0 位小数,输出整数结果。
- 如果大于:输出
样例演示
样例 1:输入
10 9pow(10,9)=1000000000,不大于 (10^9),输出1000000000。样例 2:输入
23333 66666pow(23333,66666)结果远大于 (10^9),输出-1。
信息
- ID
- 609
- 时间
- 500ms
- 内存
- 128MiB
- 难度
- 入门
- 标签
- 递交数
- 42
- 通过
- 10
- 上传者