一道非常简单的给你四个数求和
不过数据范围比较大会报long long
a,b,c,d的值最大为2^62
那么其算术和最大为2^64
unsigned long long 最大值为2^64-1
所以只要卡掉一组样例就可以ac了
#include<cstdio> #include <iostream> using namespace std; int main() { int n; cin >> n; unsigned long long a, b, c, d; while (n--) { cin >> a >> b >> c >> d; unsigned long long ans = 0; if (a == 4611686018427387904 && b == 4611686018427387904 && c == 4611686018427387904 && d == 4611686018427387904) { cout << "18446744073709551616" << endl; continue; } ans += a; ans += b; ans += c; ans += d; cout << ans << endl; } }
其中2的62次方可以用1<<62获得
另外一种是大整数类的写法,也可以写成字符串的那种
原文地址:https://www.cnblogs.com/pilium/p/9489577.html
时间: 2024-10-16 08:33:41