A1065 A+B and C (64bit,Py和c代码) (20 分) 题目地址https://pintia.cn/problem-sets/994805342720868352/problems/994805406352654336Python3方法# -*- coding: utf-8 -*-neval(input());foriinrange(n):strinput()a,b,cstr.split( )aint(a)bint(b)cint(c)if(abc):print(Case #%d: true%(i1))else:print(Case #%d: false%(i1))c方法https://www.liuchuo.net/archives/2023因为A、B的大小为[-2^63, 2^63]用long long 存储A和B的值以及他们相加的值sum如果A 0, B 0 或者 A 0, B 0sum是不可能溢出的如果A 0, B 0sum可能会溢出sum范围理应为(0, 2^64 – 2]溢出得到的结果应该是[-2^63, -2]是个负数所以sum 0时候说明溢出了如果A 0, B 0sum可能会溢出同理sum溢出后结果是大于0的所以sum 0 说明溢出了#includecstdiousing namespace std;intmain(){intn;scanf(%d,n);for(inti0;in;i){longlonga,b,c;scanf(%lld %lld %lld,a,b,c);longlongsumab;if(a0b0sum0){printf(Case #%d: true\n,i1);}elseif(a0b0sum0){printf(Case #%d: false\n,i1);}elseif(sumc){printf(Case #%d: true\n,i1);}else{printf(Case #%d: false\n,i1);}}return0;}题目Given three integers A, B and C in [-2^63^, 2^63^], you are supposed to tell whether AB 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 ABgtC, or Case #X: false otherwise, where X is the case number (starting from 1).Sample Input:31 2 32 3 49223372036854775807 -9223372036854775808 0Sample Output:Case #1: falseCase #2: trueCase #3: false思路注意溢出。 long long 的范围是[-2^63,2^63-1)正数之和为负数或者负数之和为正数就算是溢出AB必须放在long long 中存下才能进行比较不能直接在if中比较。