题目
鸡和兔总数量为 n,总腿数为 m。输入 n 和 m,依次输出鸡的数目和兔的数目。若无解,那么输出 No answer。
解答
这里开始上难度,但是鸡兔同笼是小学学的。。。
定义变量 j、t,分别表示鸡的数量、兔子的数量。
先来写出两个关系式:
- j + t = n
- 2j + 4t = m
代入消元
- t = (m-2n)/2
所以
- j = n – t
并且,我们也要考虑,输入的 m、n 必须为正整数。
那么,我们可以写出以下代码:
#include <iostream>
using namespace std;
int main()
{
/*
n:总数量
m:总腿数
j:鸡数量
t:兔数量
*/
int m,n,j,t;
cin >> n >> m;
t = (m - 2 * n) / 2;
j = n - t;
if (m % 2 != 0 || m < 2 * n || m > 4 * n)
{
cout << "No answer";
}
else
{
cout << j << " " << t;
}
return 0;
}
整体难度也不高。
祝各位读者早日成为神牛牪犇!