求助,奇怪的自然溢出问题
查看原帖
求助,奇怪的自然溢出问题
366897
HarunluoON楼主2022/11/5 21:18

在运行样例第 44 个测试用例(有几个 10910^9 的那个)时,洛谷上的结果是 49999999954999999995,本地和 CF 上则是 705032699705032699

基本上任何地方都开long long

代码如下:

#include<iostream>
#include<cstdio>
using namespace std;
long long a[51],b[51];
void work()
{
	int n;
	long long mina=1e9,minb=1e9,ad,bd,ans=0;
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	scanf("%ld",&a[i]),mina=min(mina,a[i]);
	for(int i=1;i<=n;i++)
	scanf("%ld",&b[i]),minb=min(minb,b[i]);
	for(int i=1;i<=n;i++)
	{
		ad=a[i]-mina,bd=b[i]-minb;
		ans+=(ad>bd?ad:bd);
	}
	printf("%ld\n",ans);
	return ;
}
int main()
{
	int t;
	scanf("%d",&t);
	while(t--)
	work();
	return 0;
}
2022/11/5 21:18
加载中...