穷举算法!
前言
男人一人搬三块,女人一人搬2块,小孩两人搬1块;有多少种搬法45人搬45块?
鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一,百钱买百翁?
二、使用步骤
#include<stdio.h>
int main()
{
int men,women,child;
for(men=0;men<=45;men++)
for(women=0;women<=45;women++)
for(child=0;child<=45;child++)
if(men+women+child == 45 && 3*men+2*women+0.5*child == 45)
printf("men = %d,women = %d,child = %d\n",men,women,child);
return 0;
}
men = 0,women = 15,child = 30
men = 3,women = 10,child = 32
men = 6,women = 5,child = 34
men = 9,women = 0,child = 36
Process exited after 0.0212 seconds with return value 0
请按任意键继续. . .
#include<stdio.h>
int main()
{
int gongji,muji,xiaoji;
for(gongji=0;gongji<=100;gongji++)
for(muji=0;muji<=100;muji++)
for(xiaoji=0;xiaoji<=100;xiaoji++)
if(gongji+muji+xiaoji == 100 && 3*gongji+2*muji+0.5*xiaoji == 100)
printf("gongji = %d,muji = %d,xiaoji = %d\n",gongji,muji,xiaoji);
return 0;
}
gongji = 2,muji = 30,xiaoji = 68
gongji = 5,muji = 25,xiaoji = 70
gongji = 8,muji = 20,xiaoji = 72
gongji = 11,muji = 15,xiaoji = 74
gongji = 14,muji = 10,xiaoji = 76
gongji = 17,muji = 5,xiaoji = 78
gongji = 20,muji = 0,xiaoji = 80
Process exited after 0.02109 seconds with return value 0
请按任意键继续
. . .
总结。
穷举法适合于用需要一个一个代数试出结果的算法题!