PAT 1065. A+B and C (64bit) (20)

时间:2022-09-01 09:57:26
         

题目描述:Given three integers A, B and C in [-263, 263], you are supposed to tell whether A+B > C.

Input Specification:

The first line of the input gives the positive number of test cases, T (<=10). Then T test cases follow, each consists of a single line containing three integers A, B and C, separated by single spaces.

Output Specification:

For each test case, output in one line "Case #X: true" if A+B>C, or "Case #X: false" otherwise, where X is the case number (starting from 1).

Sample Input:
3
1 2 3
2 3 4
9223372036854775807 -9223372036854775808 0
Sample Output:
Case #1: false
Case #2: true
Case #3: false
    
    出题人的本意应该是让我们进行溢出判断,但是这里可以将变量直接定义为long double类型。
    
#include <iostream>

using namespace std;

int main()
{
    long double  a,b;
    long double  c;
    int n;
    cin>>n;
    for(int i=0;i<n;i++)
    {
        cin>>a>>b>>c;
        cout<<"Case #"<<i+1<<": ";
        if(a-c+b>0)
            cout<<"true";
        else cout<<"false";
        cout<<endl;
    }
    return 0;
}