2022年12月 C/C++(三级)真题解析#中国电子学会#全国青少年软件编程等级考试

在这里插入图片描述

第1题:鸡兔同笼

一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物。
时间限制:1000
内存限制:65536
输入
一行,一个正整数a (a < 32768)。
输出
一行,包含两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数用一个空格分开。 如果没有满足要求的答案,则输出两个0,中间用一个空格分开。
样例输入
20
样例输出
5 10

这个问题可以通过数学方法来解决。我们知道鸡有2只脚,兔子有4只脚,且没有例外。假设笼子里的动物数为x,则鸡的数量为y,兔子的数量为z。

根据题目条件,我们可以得到以下两个等式:

(1)2y + 4z = a (脚的总数为a)

(2)y + z = x (动物的总数为x)

我们需要求解的是最少和最多的动物数,即求解x的最小值和最大值。

最少动物数的情况下,我们假设所有的动物都是兔子,此时每只动物有4只

猜你喜欢

转载自blog.csdn.net/gozhuyinglong/article/details/132381518
今日推荐