1011. A+B和C (15)
给定区间[-231, 231]内的3个整数A、B和C,请判断A+B是否大于C。
输入格式:
输入第1行给出正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。
输出格式:
对每组测试用例,在一行中输出“Case #X: true”如果A+B>C,否则输出“Case #X: false”,其中X是测试用例的编号(从1开始)。
输入样例:4
1 2 3
2 3 4
2147483647 0 2147483646
0 -2147483648 -2147483647输出样例:
Case #1: false
Case #2: true
Case #3: true
Case #4: false
Answer:
#include<iostream>
using namespace std;
int main() {
int times;
cin >> times;
long long inputs[times * 3];
for(int i = 0;i < times;i ++ )
cin >> inputs[3 * i] >> inputs[3 * i + 1] >> inputs[3 * i + 2];
for(int i = 0; i < times; i ++)
if(inputs[3 * i] + inputs[3 * i + 1] > inputs[3 * i + 2])
cout << "Case #" << i + 1 << ": true" << endl;
else
cout << "Case #" << i + 1 << ": false" << endl;
}
PS.
如果是在C/C++/Java这种静态类型的语言中,这道题还有点意思。因为231恰好超过了int
类型的的取值范围。
不过,在C/C++中,sizeof(int) == sizeof(long) == 4
所以要获得正确的结果,得用long long
。
如果是Python/JavaScript,这道题就只是一道格式化输出的问题了。