鸡兔同笼
时间限制:
3000 ms | 内存限制:
65535 KB
难度:
1
-
描述
-
已知鸡和兔的总数量为n,总腿数为m。输入n和m,依次输出鸡和兔的数目,如果无解,则输出“No answer”(不要引号)。
-
输入
-
第一行输入一个数据a,代表接下来共有几组数据,在接下来的(a<10)
a行里,每行都有一个n和m.(0<m,n<100)
输出
- 输出鸡兔的个数,或者No answer 样例输入
-
2 14 32 10 16
样例输出
-
12 2 No answer
分析:
方法一:
设鸡有x只,则兔有n-x只。
2*x+4*(n-x)=m。
x=(4*n-m)/2。
x必须是非负整数,否则No answer
方法二:
直接暴力搜索把鸡的数量从0搜到n,看哪个符合腿数m。
此处只贴方法二代码:
#include<cstdio> int main() { int T; scanf("%d",&T); while(T--) { int a,b; scanf("%d%d",&a,&b); int n; for(n=0;n<=a;n++) { if(n*2+(a-n)*4==b) { printf("%d %d\n",n,a-n); break; } } if(n>a) printf("No answer\n"); } return 0; }
-
第一行输入一个数据a,代表接下来共有几组数据,在接下来的(a<10)