1.枚举算法的核心思想:算法
将全部问题的可能性一一列举。
2.枚举算法的应用:spa
《百钱找百鸡》
问题:
公鸡每只5元,母鸡每只3元,小鸡3只1元。用100元买100只鸡code
问公鸡,母鸡,小鸡各多少?
3.解决问题的核心思想:对象
以3种鸡的个数为枚举对象(gj,mj,xj)
4.枚举条件:
gj+mj+xj=100;[个数之和]图片
gj5+mj3+xj/3=100;[用钱之和]get
xj%3==0;[小鸡个数必定能够取余3,由于xj个数和购买花的钱必须为整数]it
5.代码实现:class
int main() { //过程:分别枚举公鸡,母鸡的个数范围知足条件进行输出。 int x, y, z;//分别表示公鸡,母鸡和小鸡的个数 for (x = 0; x <= 20; x++)//公鸡个数范围:0-20只,用100元除以每只公鸡的钱 { for (y = 0; y <= 33; y++)//母鸡个数范围:0-33只,用100元除以每只母鸡的钱 { z = 100 - x - y;//z表示小鸡的个数 if (z % 3 == 0 && x * 5 + y * 3 + z / 3 == 100) printf("公鸡:%d,母鸡:%d,小鸡:%d\n", x, y, z); } } getch(); return 0; }
6.代码实现效果图:im