2022 年 12 月青少年软编等考 C 语言三级真题解析
目录
- T1. 鸡兔同笼
-
- 思路分析
- T2. 猴子吃桃
-
- 思路分析
- T3. 括号匹配问题
- T4. 上台阶
-
- 思路分析
- T5. 田忌赛马
T1. 鸡兔同笼
一个笼子里面关了鸡和兔子(鸡有 2 2 2 只脚,兔子有 4 4 4 只脚,没有例外)。已经知道了笼子里面脚的总数 a a a,问笼子里面至少有多少只动物,至多有多少只动物。
时间限制:1 s
内存限制:64 MB
- 输入
一行,一个正整数 a ( a < 32768 ) a\ (a < 32768) a (a<32768)。 - 输出
一行,包含两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数用一个空格分开。如果没有满足要求的答案,则输出两个 0 0 0,中间用一个空格分开。 - 样例输入
20
- 样例输出
5 10
思路分析
此题考查数学思维,属于入门题。
由于鸡和兔子的脚都是偶数,因此
- 如果 a a a 为奇数,则没有满足要求的答案;
- 如果 a a a 为偶数,则最少的动物数量应满足兔子数量最多,此时答案为 ⌈ a / 4 ⌉ \lceil a/4 \rceil ⌈a/4⌉;最多的动物数量应满足鸡的数量最多,此时答案为 a / 2 a/2 a/2。
/*
* Name: T1.cpp
* Problem: 鸡兔同笼
* Author: Teacher Gao.
* Date&Time: 2024/12/02 19:41
*/
#include <cstdio>
int main()
{
int a;
scanf("%d", &a);
if (a % 2)
printf("0 0"