神奇的辣条

时间: 1ms        内存:128M

描述:

豆豆与牛牛计控学院在学神,每次考试他俩都是前两名。然而两人都想正当第一名。聪明的豆豆发现了成为第一名,是和两人考试前几天吃辣条的数量有关。
牛牛和豆豆每天带一包辣条到学校,一包辣条有10根。他俩每天主要是上午吃辣条,吃的辣条越多,学习精力越足。两人都有一个癖好,如果上午吃奇数根辣条,则下午要补一根。最后谁考试前几天吃的辣条多,谁成为第一名。
现在给你一组牛牛与豆豆吃辣条的记录,你能预测谁是第一吗?

输入:

输入有3行。

第1行是豆豆与牛牛考试前吃辣条的天数n。

第2行有n个数,是豆豆每天上午吃的辣条的数量。

第3行有n个数,是牛牛每天上午吃的辣条数量。

输出:

一行,如果豆豆第一,输出“doudou“;如果牛牛第一,输出“niuniu”,如果两人并列第一,输出“parallel”。

示例输入:

5
2 3 4 5 1
3 5 2 3 4

示例输出:

niuniu

提示:

参考答案(内存最优[1092]):

#include <stdio.h>

int main()
{
    int n;
    int dt=0,nt=0;
    int i;
    //Read 1st
    scanf("%d",&n);
    int dou[n],niu[n];
    //read 2nd
    for (i=0;i<n;i++)
    {
        scanf("%d",&dou[i]);
    }
    for (i=0;i<n;i++)
    {
        scanf("%d",&niu[i]);
    }
    //MainCode
    for (i=0;i<n;i++)
    {
        if (dou[i]%2==0)
            dt=dt+dou[i];
        else
            dt=dt+dou[i]+1;
    }
    for (i=0;i<n;i++)
    {
        if (niu[i]%2==0)
            nt=nt+niu[i];
        else
            nt=nt+niu[i]+1;
    }
    if (dt>nt)
        printf("doudou");
    else if (dt<nt)
        printf("niuniu");
    else if (dt==nt)
        printf("parallel");
    return 0;
}

参考答案(时间最优[0]):

#include "stdio.h"
int main()
{
    int n,i;
    int douHart,niuHart;
    int eat,sheng;
    while(scanf("%d",&n) != EOF && n != 0)
    {

        douHart = 0;
        niuHart = 0;
        for(i = 0; i < n; i++)
        {
            scanf("%d", &eat);
            sheng = 10 - eat;
            douHart += sheng;
            sheng % 2 && douHart++;
        }
        for(i = 0; i < n; i++)
        {
            scanf("%d", &eat);
            sheng = 10 - eat;
            niuHart += sheng;
            sheng % 2 && niuHart++;
        }
        if(douHart == niuHart)
        {
            printf("parallel");
            continue;
        }
        if(douHart > niuHart)
        {
            printf("niuniu");
        }
        else
        {
            printf("doudou");
        }
    }
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。