解题思路:
可直接列方程,求出鸡和兔的数量。
注意事项:
1、题目有负数取值,要判断输入数据的合法性;
2、求解的鸡兔数量可能为小数,不是可行解,可通过相加是否与原本数量相等判断,不相等即被截断;
3、求解的鸡兔数量也可能为非正数,也要进行判断;
4、排除上述情况的鸡兔数量即为正整数可行解。
参考代码:
#include<stdio.h> int main() { int n, m, a, b; while(scanf("%d%d", &n, &m) != EOF){ if(n < 0 || m < 0){ printf("No answer\n"); } else{ b = (m - 2 * n) / 2; a = (4 * n - m) / 2; if(a + b != n || a < 0 || b < 0){ printf("No answer\n"); } else{ printf("%d %d\n", a, b); } } } return 0; }
0.0分
4 人评分
#include<stdio.h> int main() { int m,n,x,y,z; scanf("%d%d",&n,&m); x=m-2*n;y=x/2;z=n-y; if(x%2==0&&x>0&&n>0&&m>0) {printf("%d %d",z,y);} else{ printf("No"); } return 0; } 为什么错的
亲和的解法浏览:1102 |
C语言程序设计教程(第三版)课后习题6.6 (C++代码)浏览:727 |
C二级辅导-进制转换 (C语言代码)浏览:1061 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:741 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:761 |
printf基础练习2 (C语言代码)浏览:955 |
简单的a+b (C语言代码)浏览:564 |
WU-格式化数据输出 (C++代码)浏览:1313 |
【计算直线的交点数】 (C语言代码)浏览:1501 |
C语言训练-自由落体问题 (C语言代码)浏览:650 |