郑州轻工业大学oj题解(c语言)1007:|郑州轻工业大学oj题解(c语言)1007: 鸡兔同笼

由于今天玩了一天~所以文章来不及写了,为了维持日更,今天就水一道简单题吧 1007: 鸡兔同笼

  • 【郑州轻工业大学oj题解(c语言)1007:|郑州轻工业大学oj题解(c语言)1007: 鸡兔同笼】题目描述
    鸡和兔关在一个笼子里,鸡有2只脚,兔有4只脚,没有例外。已知现在可以看到笼子里m个头和n只脚,求鸡和兔子各有多少只?
  • 输入
    输入两个整数m和n,分别代表笼子里头的个数和脚的个数。(假设m和n都在合法的数据范围内)
  • 输出
    依次输出鸡和兔的只数。(数字为0的也要输出)
  • 参考代码:
#include main() { int a,b,c,d,e,f; scanf("%d %d",&a,&b); c=a*2; d=b-c; e=d/2; f=a-e; printf("%d %d",f,e); }

  • 代码解析:
    这道题我是用我个人做鸡兔同笼的方法来做的。
    c=a*2:a是头数,如果默认笼子里都是鸡的话,那每个头就代表2个脚。
    d=b-c: 默认笼子里都是鸡后,脚数还有多余的话,那显然这些多出的腿,就是兔子的那两只腿,我们先求出它的总数。
    e=d/2: 既然多出的腿数是兔子的两只腿的话,那我们把多出的腿数除以2,自然就得出兔子的总数了~
    f=a-e:最后我们用总头数,减去兔子的数量,就能知道鸡的数量了~
这道题本身对于代码方面需求难度不高,都是简单的加减乘除。
更多的是题目本身逻辑的思考。鸡兔同笼作为小学奥赛题,用以培养自身的逻辑思考能力,还是很不错的~

    推荐阅读