题意:算a ^ b,如果结果超出1e9就输出-1,反之输出结果。
思路:边算边判加特判。
代码:
#include<cstdio> #define ll long long #define mx 1e9//边界 using namespace std; int main() { ll a,b,ans; scanf("%lld %lld",&a,&b); if(a==1)//特判 { printf("1"); return 0; } ans=1; for(ll i=1;i<=b;i++) { ans*=a;//算 if(ans>mx)//判 { printf("-1"); return 0; } } printf("%lld",ans);//输出 return 0; }
标签:J2022T1,return,P8813,题解,ll,printf,ans,lld From: https://www.cnblogs.com/blacktee/p/CSP-J2022T1.html