BIT寒假练习-2013__1001:Average Numbers

来源:互联网 发布:怎样注册网络主播 编辑:程序博客网 时间:2024/06/04 23:33

大水题。

求个平均数,要是平均数不是整数直接输出0,然后在数列里面刷一遍,记录下每个满足条件的数字的编号,输出,OK。

这题也纠结了一下。(我真是太水了。)输出格式上说如果没有就输出0,不用再输一个空行,英语不好直接有道,有道给我的翻译是可以输一个空行,结果一直WA。英语果然很重要啊,英语硬伤,无力吐槽。。。

#include <cstdio>#include <cstdlib>#include <iostream>int num[200100];int ans[200100];int n,t,sum,ave;int main(){    scanf("%d",&n);    for (int k = 1 ; k <= n ; k ++)    {        sum = 0;        memset(num,0,sizeof(num));        memset(ans,0,sizeof(ans));                scanf("%d",&t);        for (int i = 1 ; i <= t ; i ++)        {            scanf("%d",&num[i]);            sum += num[i];        }        ave = sum / t;        if (sum % t != 0) {                           printf("0\n");                           continue;                          }        for (int i = 1 ; i <= t ; i++)        {            if (num[i] == ave) {                                ans[0]++;                                ans[ans[0]] = i;                               }        }        printf("%d\n",ans[0]);        if (ans[0] == 0) {                          //printf("\n");                          continue;                         }        if (ans[0] == 1) {                          printf("%d\n",ans[1]);                          continue;                         }        for (int i = 1 ; i < ans[0] ; i ++)            printf("%d ",ans[i]);        printf("%d\n",ans[ans[0]]);    }    return 0;}


原创粉丝点击