题目地址:PAT乙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开始)。
求解过程:
看到这个区间,其实范围是64位之内的,因此我们可以用long来解决该问题,而非必须使用大数加减法的方法。
程序:
#include <iostream>
using namespace std;
int main()
{
long T, a, b, c;
cin >> T;
long A[T], B[T], C[T];
int count = 1;
while(T--)
{
cin >> a >> b >> c;
A[count-1] = a;
B[count-1] = b;
C[count-1] = c;
count++;
}
for (int i = 0; i < count-1; ++i)
{
if (A[i] + B[i] > C[i])
{
cout << "Case #" << i+1 << ": true" << endl;
}
else
{
cout << "Case #" << i+1 << ": false" << endl;
}
}
}