【算法】鸡兔同笼问题

生来就可爱ヽ(ⅴ<●) 提交于 2019-11-27 18:20:55

 

 

题面描述
  已知鸡和兔的总数量为n,总腿数为m,输入nm,依次输出鸡的数目和兔的数目。如果无解则输出No answer

 

 

输入
  两个整数b和m,如上所述。

 

 

输出
  鸡的数目和兔的数目。

 

 

输入实例

  14 32

 

 

输出实例

  12 2

 

 

解题思路

  那咱就先看看怎么得出鸡的数量和兔子的数量
  我们假设a = 鸡只数b = 兔只数  

(兔的脚数×总只数-总脚数)÷(兔的脚数-鸡的脚数)=鸡的只数

  a = ( 4*n - m )/2

 

  总只数-鸡的只数=兔的只数

  b = n - a

 

  

 

#include<stdio.h>
int main() {
    int a,b,n, m;
    // a鸡的数量
    // b兔的数量
    // n鸡兔总数
    // m总脚数
    scanf("%d %d", &n,&m);
    a = (4 * n - m) / 2;//算出鸡的数量
    b = n - a;//算出兔的数量

    if (a <= 0 || b <= 0) {
        printf("No answer");    //结果小于等于0,答案不成立,无解
    }else {
        printf("%d %d\n", a, b);        //结果大于0
     }
     
     
  return 0;
}
View Code

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!