#include <iostream>
using namespace std;
int main() {
long a, b; //要设置为long
int c;
int count;
cin>>count;
for(int i=0;i<count;i++){
cin>>a>>b>>c;
if(a+b>c){
cout<<"Case"<<" "<<"#"<< i+1 <<":"<<" "<<"true"<<endl;
}
else {
cout<<"Case"<<" "<<"#"<< i+1 <<":"<<" "<<"false"<<endl;
}
}
return 0;
}
这道题目的思路其实挺简单的,但是要注意一个点就是a和b的类型应该要用long而不是int。
因为这会导致整数溢出。使用
int
类型来存储变量a
、b
和c
的值,而输入的值中包含一个极大的整数2147483647。在大多数编程语言中,int
类型的取值范围为-2147483648到2147483647,因此2147483647是int
类型的最大值。当执行a + b
时,a
和b
的值分别为2147483647和0,相加的结果将超过int
类型的最大值,导致整数溢出。整数溢出会导致未定义的行为,可能会得到不正确的结果。为了解决这个问题,所以我们将变量
a
和b
的类型改为long
,以便能够容纳更大范围的整数。