1065 A+B and C (64bit) (20 分)大数 溢出

Posted zhanghaijie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1065 A+B and C (64bit) (20 分)大数 溢出相关的知识,希望对你有一定的参考价值。

1065 A+B and C (64bit) (20 分)

Given three integers A, B and C in [?2?63??,2?63??], 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
思路:
  a、b、c都是long long 范围内的,但是它们相加之后可能会超过范围。
#include<iostream>
#include<vector>
#include<algorithm>
#include<map>
#include<set>
#include<cmath>
#include<climits>
using namespace std;



int main()
{
    int n;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        long long a,b,c,x;
        cin>>a>>b>>c;
        x=a+b;
        if(a<0&&b<0&&x>=0)
            printf("Case #%d: false
",i+1);
        else if(a>0&&b>0&&x<0)
            printf("Case #%d: true
",i+1);
        else if(x>c)
            printf("Case #%d: true
",i+1);
        else
            printf("Case #%d: false
",i+1);
    }
    return 0;
}

 

 



以上是关于1065 A+B and C (64bit) (20 分)大数 溢出的主要内容,如果未能解决你的问题,请参考以下文章

[A]1065 A+B and C (64bit)(挖坑待填)

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

PAT1065: A+B and C (64bit)

1065 A+B and C (64bit) (20分)

PAT.1065 A+B and C(64bit) (正负数溢出处理)

PAT.1065 A+B and C(64bit) (正负数溢出处理)