如果你是70pts,求WAon最后三个点,那么请检查,你的代码是否类似这样:```
#include
#include <math.h>
int main(){
int a,b;
long long ans;
const int maxn = 1e9;
scanf("%d%d",&a,&b);
ans = pow(a * 1.0l,b);
if (ans <= maxn) printf("%lld\n",ans);
else puts("-1");
return 0;
}
其存在溢出风险,应该改为:
#include
#include <math.h>
int main(){
int a,b;
long long ans;
const int maxn = 1e9;
scanf("%d%d",&a,&b);
ans = pow(a * 1.0l,b);
if (ans >= 0 && ans <= maxn) printf("%lld\n",ans);
else puts("-1");
return 0;
}
即加上负数判断