gpt4 book ai didi

c - Candy I 的这段代码有什么问题?

转载 作者:太空宇宙 更新时间:2023-11-03 23:23:58 24 4
gpt4 key购买 nike

我在 spoj 上遇到了一个问题。这里是源代码的 ideone 链接,供您测试您的编辑:http://ideone.com/IGrTjK问题的链接是:http://www.spoj.com/problems/CANDY/尽管以正确的格式通过了给定的测试用例,但它似乎在 spoj 上给了我 WA。这是我的代码。

#include<stdio.h>

int main() {
unsigned int n, i, sum, avg, count;
while(1) {
scanf("%d", &n);
if(n == -1)
break;
unsigned int a[n+1];
sum = count = 0;
for(i=0; i<n; i++) {
scanf("%d", &a[i]);
sum += a[i];
}
if(sum%n != 0) {
printf("-1\n");
}
else {
avg = sum/n;
for(i=0; a[i]<avg; i++)
count += (avg - a[i]);
printf("%d\n", count);
}
}
return 0;
}

最佳答案

循环不正确

您的主循环在第一个等于或大于平均值的数据包处结束:

   for(i=0;a[i]<avg;i++)
count+=(avg-a[i]);

它需要查看所有数据包:

   for(i=0;i<n;i++) {
if (a[i] < avg)
count+=(avg-a[i]);
}

关于c - Candy I 的这段代码有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31774904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com