题意及思路
题意:给出三个64位的的整数,求a+b是否大于c。
思路:正常来说,long long 数据范围正好合适。只是计算比较的时候,需要考虑溢出的问题(正溢出或负溢出)。见下图:
注意点:
代码
#include <iostream>
#include <cstdio>
using namespace std;
int main(){
int t;
cin >> t;
long long a,b,c,rs;
for(int i=1;i<=t;i++){
scanf("%lld %lld %lld",&a,&b,&c);
bool f;
rs = a+b;
if(a>0&&b>0&&rs<0) f = true; //正溢出 rs<0
else if(a<0&&b<0&&rs>=0) f = false; //负溢出 rs>=0
else if(rs>c) f = true; //无溢出
else f = false;
cout << "Case #" << i <<": ";
if(f) cout << "true" << endl;
else cout << "false" << endl;
}
return 0;
} 
京公网安备 11010502036488号