TB椰程 TypeBuddy 打字搭子

【例19.1】 鸡兔同笼

C++语法 · 条件判断 · 代码 · cpp · 难度 3/5 · 共 545 字

鸡兔同笼:由脚数求动物最少与最多只数

  • C++语法
  • 例题

正文

// 原题:https://oj.yecheng.tv/p/P105
// 题意:笼子里关着鸡(2只脚)和兔子(4只脚),已知脚的总数 a,
//       求动物最少几只、最多几只;无解输出两个 0。
// 思路:脚数为奇数时无解;偶数时最多全是鸡 a/2 只,
//       最少让兔子尽量多,a%4 余 2 时再补 1 只鸡。
#include <iostream>
using namespace std;

int main() {
    int a;
    cin >> a;
    // 脚数是奇数,鸡兔怎么凑都是偶数,无解
    if (a % 2 == 1) {
        cout << 0 << " " << 0 << endl;
    } else {
        // 全是鸡时动物最多
        int maxN = a / 2;
        // 全让兔子多占脚,余 2 只脚再补 1 只鸡
        int minN = a / 4 + (a % 4 == 2 ? 1 : 0);
        cout << minN << " " << maxN << endl;
    }
    return 0;
}

C++语法 · 条件判断的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK