以下是您测试修改的源代码的ideone链接:https://ideone.com/3yDtFb 这是问题的链接:http://www.spoj.com/problems/CANDY/ 尽管传递给定的格式正确的测试用例,它似乎给了我关于spoj的信息,这里是代码。
#include<iostream>
using namespace std;
int main()
{
long long int i,n,each,min;
cin>>n;
while(n!=-1)
{
long long int a[n],sum=0;
for(i=0;i<n;i++)
{
cin>>a[i];
sum+=a[i];
}
if(sum%n!=0)
cout<<-1;
else
{
each=sum/n;
for(i=0;i<n;i++)
{
if(a[i]>each)
min=(a[i]-each);
}
cout<<min<<endl;
}
cin>>n;
}
return 0;
}
答案 0 :(得分:1)
即使我有相同的查询。大约半小时后,每次迭代都单击:变量“ sum”和“ min”被传递到下一个测试用例。 因此,请在外部的“ while”范围内对其进行初始化。
答案 1 :(得分:0)
您丢失了min=0
,min+=
和cout<<-1<<endl
min=0;
each=sum/n;
for(i=0;i<n;i++)
{
if(a[i]>each)
min+=(a[i]-each);
}
cout<<min<<endl;