计算概论(A)/基础编程练习1(8题)/5:鸡兔同笼

 1 #include<stdio.h>
 2 int main() {
 3     // 鸡兔同笼中脚的总数:a < 32768
 4     int a;
 5     scanf("%d", &a);
 6 
 7     // 输出最少动物数和最多动物数
 8     if(a%2!=0 || a==0) {
 9         // 奇数或者零的脚数量不满足要求
10         printf("%d %d\n", 0, 0);
11     } else if(a==2) {
12         // 脚数量为2是特殊情况
13         printf("%d %d\n", 1, 1);
14     } else if(a/4!=0 && a/2!=0) {
15         // 当至多与至少都不为零时才满足条件 需要考虑剩余余数可以构成至多/至少动物数量 
16         printf("%d %d\n", a/4+(a-a/4*4)/2, a/2+(a-a/2*2)/4);
17     }
18     return 0;
19 }
20 /*
21 pkuic_1752.c
22 计算概论(A)/基础编程练习1(8题)/5:鸡兔同笼
23 http://pkuic.openjudge.cn/base1/5
24 5:鸡兔同笼
25 查看 提交 统计 提问
26 总时间限制: 1000ms 内存限制: 65536kB
27 描述
28     一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物。
29 输入
30     一行,一个正整数a (a < 32768)。
31 输出
32     一行,包含两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数用一个空格分开。
33     如果没有满足要求的答案,则输出两个0,中间用一个空格分开。
34 样例输入
35     20
36 样例输出
37     5 10
38 */

 

posted @ 2017-03-04 19:14  valuestack  阅读(902)  评论(0)    收藏  举报