PAT甲级1065题数据输入的一个疑问

浙大PAT甲级1065题,注释处改成cin输入有一个测试集始终无法通过

#include<iostream>
using namespace std;
int main()
{
    int n;    
    cin>>n;
    for (int i=0;i<n;i++)
    {
        long long a,b,c,sum;
        scanf("%lld %lld %lld", &a, &b, &c);
        //为什么用cin最后一个测试集无法通过? 
        sum=a+b;
        if (a>0 && b>0 && sum<0)
            printf("Case #%d: true\n", i + 1);
        else if (a<0 && b<0 && sum>=0)
            printf("Case #%d: false\n", i + 1); 
        else if (sum>c)
            printf("Case #%d: true\n", i + 1);
        else
            printf("Case #%d: false\n", i + 1);
    }
    return 0;
}


scanf会比cin要快一些,因此如果你使用cin读入大段数据会导致超时。
默认的时候cin与stdin总是保持同步,同时cout和stdout也一样,两者混用不会输出顺序错乱。
对两者的兼容性导致cin有许多额外的开销。禁用这个特性的语句是

std::ios::sync_with_stdio(false);

取消同步后会提速很多,但是仍然比不上scanf与printf