码迷,mamicode.com
首页 > 其他好文 > 详细

百钱百鸡

时间:2016-01-10 19:52:18      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:

1只公鸡值5文钱;1只母鸡值3文钱;3只小鸡值1文钱。请问用文钱买100只鸡,公鸡、母鸡和小鸡各有几只?

实际题目中会按照M文钱买N只鸡的形式

按公鸡母鸡小鸡的顺序分别输出结果,一组解答占一行,解答按照公鸡数目从大到小排序(其次母鸡,再次小鸡)

无解时请输出 no answer

 

如输入为:

100 100

则输出:

12 4 84

8 11 81

4 18 78

0 25 75

 

如输入为:

1 4

则输出为:

no answer

 

 

Hint

利用循环穷举所有可能

 

标答

1.#include<stdio.h>
2.int main() {
3.    int a, b, c;
4.    int money, number, flag;
5.    scanf("%d %d", &money, &number);
6.    flag = 0;
7.    for (a = money/5; a >= 0; a--)
8.        for (b = money/3; b >= 0; b--)
9.            for (c = money; c >= 0; c--) {
10.                if (a + b + c*3 == number && a*5 + b*3 + c == money) {
11.                        flag++;
12.                        printf("%d %d %d\n", a, b, c*3);
13.                    }
14.            }
15.    if ( flag == 0 )
16.        printf("no answer\n");
17.    return 0;
18.}

  

这题我也开始循环都是用for(a = 0; a < number; a++),导致超时了,所以需要优化,这题从大往小,,且两个终端值都不是用0和number,

有一题差不多的是换硬币,我用同样的方法却没有办法实现,所以那道题自己早去看看是怎样的( ̄_, ̄ )

百钱百鸡

标签:

原文地址:http://www.cnblogs.com/-lyric/p/5118913.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!