首页 > 代码库 > PAT1065. A+B and C (64bit)

PAT1065. A+B and C (64bit)

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:

31 2 32 3 49223372036854775807 -9223372036854775808 0

Sample Output:

Case #1: falseCase #2: trueCase #3: false
思路:此题有一点需要注意,以后不要在if里面进行计算因为可能有问题 ,需要开始个临时变量。
技术分享
 1 #include<cstdio> 2 int main(int argc, char *argv[]) 3 { 4     int T; 5     long long a; 6     long long b; 7     long long c; 8     scanf("%d",&T); 9     for(int i=1;i<=T;i++)10     {11         scanf("%lld%lld%lld",&a,&b,&c);12         bool flag;13         long long temp=a+b;         //????????????? 14         if(a>0&&b>0&&temp<0)15             flag=true;16         else if(a<0&&b<0&&temp>=0)  //?????17             flag=false;18         else if(temp>c)19             flag=true;20         else 21             flag=false;22         if(flag)23           printf("Case #%d: true\n",i);24         else 25           printf("Case #%d: false\n",i);26     }27     return 0;28 }
View Code

 

PAT1065. A+B and C (64bit)