题目描述
分析:
long long的范围是[-26,263),利用机组的知识,只有两个符号相同的数相加,结果的符号不同会发生溢出。那么当a>0,b>0,a+b<0发生正溢出,此时a+b>c;当a<0,b<0,a+b>0发生负溢出,此时a+b<c.
#include<cstdio>
int main(){
int t,kase=1;
scanf("%d",&t);
while(t--){
long long a,b,c;
scanf("%lld%lld%lld",&a,&b,&c);
long long temp=a+b;
bool flag;
if(a>0&&b>0&&temp<0) flag=true;
else if(a<0&&b<0&&temp>=0) flag=false;
else if(temp>c) flag=true;
else flag=false;
if(flag){
printf("Case #%d: true\n",kase++);
}
else{
printf("Case #%d: false\n",kase++);
}
}
}