Skip to content

A+B and C (64bit)

题目链接1065 A+B and C (64bit) (20 分)

不能用cin的原因

链接: [C++]--PAT-A1065 & cin与scanf

题干大意

给出三个64位的整数,A,B,C,判断\(A+B>C\)是否成立

思路

使用long long存储,进行判断计算即可。

问题

此题用cin最后一个测试样例过不了,只能用scanf具体分析见 [C++]--PAT-A1065 & cin与scanf

AC代码

C++
#include <cstdio>
#include <iostream>
using namespace std;

int main()
{
    int T;
    cin >> T;
    for (auto k = 0; k != T; ++k) {
        long long a, b, c;
        // cin >> a >> b >> c;
        scanf("%lld%lld%lld", &a, &b, &c);
        auto res = a + b;
        bool flag;
        if (a > 0 && b > 0 && res < 0)
            flag = true;
        else if (a < 0 && b < 0 && res >= 0)
            flag = false;
        else if (res > c)
            flag = true;
        else
            flag = false;
        if (flag)
            cout << "Case #" << k + 1 << ": true" << endl;
        else
            cout << "Case #" << k + 1 << ": false" << endl;
    }
    return 0;
}