码迷,mamicode.com
首页 > 编程语言 > 详细

C/C++算法竞赛入门经典Page9 例题1-4 鸡兔同笼

时间:2017-08-25 21:38:16      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:代码   算法竞赛入门经典   span   code   输出   nbsp   cst   else   scan   

题目:鸡和兔总数:n,总腿数:m.输入n,m,输出鸡和兔分别的数量;无解则输出"No answer"

样例输出1:

14 32

样例输出1:

12 2

样例输入2:

10 16

样例输出2:

No answer

 

首先,声明两个变量n,m对应总数和总腿数;再声明两个变量为鸡和兔各自的数量a,b

1 int n,m,a,b;

输入n,m:

scanf("%d%d",&n,&m);

通过联立方程组:

a+b=n

2a+4b=m

得:

a=(4n-m)/2;

b=n-a;

判断是否无解:

1.总腿数m不能为奇数

2.a>=0

3.b>=0

则:

if(m%2==1||a<0||b<0)
    printf("No answer");

如果有解,则输出a,b:

else
    printf("%d %d",a,b);

完整代码:

//P9 例1-4鸡兔同笼
#include <cstdio>

int n,m;//n:总数量 m:总腿数 

int main()
{
    int a,b;//a:鸡的数量 b:兔的数量
    
    scanf("%d%d",&n,&m);//输入总数量n和总腿数m 
    
    a=(4*n-m)/2;//联立方程组2a+4b=m和a+b=n 
    b=n-a;
    
    if(m%2==1||a<0||b<0)//总腿数不能是奇数且鸡和兔的数量都不能是负数 
        printf("No Answer");
    else
        printf("%d %d",a,b);
    
    return 0;    
 } 

 

C/C++算法竞赛入门经典Page9 例题1-4 鸡兔同笼

标签:代码   算法竞赛入门经典   span   code   输出   nbsp   cst   else   scan   

原文地址:http://www.cnblogs.com/Oswald/p/7429626.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!