南邮NOJ鸡兔同笼问题

鸡兔同笼

时间限制(普通/Java) : 1000 MS/ 3000 MS          运行内存限制 : 65536 KByte
总提交 : 1836            测试通过 : 306 

题目描述

    这是一个代代相传的古老问题~

    已知鸡和兔的总数量为n,总腿数为m,输入n和m,输出兔的数目。如果无解,则输出“No answer” (不要引号)



输入

第一行是一个正整数T,表示测试用例数目,1<=T<=100000;

对于每个测试样例,输入两个整数n,m,分别表示头数与腿数,( 0<=n,m<=100 )

输出

对于每个测试用例,输出一行,依次包含:

l   “Case #: ”,#表示序号,注意冒号后有一个空格

l      兔的数目,如果无解则输出"No answer"


样例输入

2
14 32
10 16

样例输出

Case 1: 2
Case 2: No answer

#include<cstdio>
int main()
{
    int p,c=0;
    scanf("%d",&p);
    while(p--)
    {
        int n,m,y;
        scanf("%d%d",&n,&m);
        printf("Case %d: ",++c);
        y=m/2-n;
        if(m%2==0&&y>=0&&(4*n-m)>=0)
        {
             printf("%d
",y);
        }
        else
        {
           printf("No answer
");
        }
    }
    return 0;
}

主要是if条件的控制,好几次WA提示,想不通,只有y>=0&&4*n-m的判断条件,后来加上m%2==0就过了。

总之还是控制条件的问题。

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/Tobyuyu/p/4965735.html