A1065
判断两数相加是否大于第三数,大于输出true,否则输出false(相等也是false)
1 需要注意数字溢出的问题;
2 先判断溢出,因为在a,b都是负数最小值的情况下,相加直接是正数,在c较小的时候会导致结果出错。
1 #include<cstdio> 2 #include<iostream> 3 using namespace std; 4 int main(){ 5 long long a,b,c; 6 long long sum; 7 int n,res; 8 scanf("%d",&n); 9 for(int i=1;i<=n;i++){ 10 scanf("%lld%lld%lld",&a,&b,&c); 11 sum=a+b; 12 if(a>0&&b>0&&sum<0) res=1; 13 else if(a<0&&b<0&&sum>=0) res=0; 14 else if(sum>c) res=1; 15 else res=0; 16 if(res==1) printf("Case #%d: true\n", i); 17 else printf("Case #%d: false\n", i); 18 } 19 return 0; 20 }