Bailian2750 鸡兔同笼入门

Posted 海岛Blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bailian2750 鸡兔同笼入门相关的知识,希望对你有一定的参考价值。

2750:鸡兔同笼
总时间限制: 1000ms 内存限制: 65536kB
描述
一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物。

输入
一行,一个正整数a (a < 32768)。
输出
一行,包含两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数用一个空格分开。
如果没有满足要求的答案,则输出两个0,中间用一个空格分开。
样例输入
20
样例输出
5 10

问题链接Bailian2750 鸡兔同笼
问题简述:(略)
问题分析
  按Markdown格式重写了题解,旧版题解参见参考链接。
  这是一个与传统意义不一样的鸡兔同笼问题。实际上,是计算问题,理清计算逻辑关系是关键。给定脚的总数,求笼子里最少多少只动物,最多多少只动物?脚数不是偶数则是不合理的,输出0。对于给定的脚数,笼子里全是鸡时,动物数量最多;脚尽可能是兔子时,动物数量最少。
程序说明
  程序中,把输入逻辑、计算逻辑和输出输出逻辑分开来写,是推荐的做法,可以使得程序逻辑更加清晰,使得程序更具有可修改性。
参考链接Bailian2750 鸡兔同笼【入门】
题记:(略)

AC的C语言程序如下:

/* Bailian2750 鸡兔同笼 */

#include <stdio.h>

int main(void)
{
    int a, x, y;

    scanf("%d", &a);

    if (a % 2 == 0) {
        x = a / 4 + (a % 4 == 0 ? 0 : 1);
        y = a / 2;
    } else {
        x = 0;
        y = 0;
    }

    printf("%d %d\\n", x, y);

    return 0;
}

以上是关于Bailian2750 鸡兔同笼入门的主要内容,如果未能解决你的问题,请参考以下文章

2750 鸡兔同笼(简单计算题)

《C#零基础入门之百识百例》(四十一)类的定义和使用 -- 鸡兔同笼

基础入门题023《孙子算经》之鸡兔同笼

鸡兔同笼python程序怎么写?

Java小白入门200例56之鸡兔同笼问题

如何用while循环做鸡兔同笼的问题?