1. 百钱百鸡(穷举算法)
设公鸡、母鸡、小鸡分别为x、y、z 只,由题意得:
x+y+z =100……①
5x+3y+(1/3)z =100……②
有两个方程,三个未知量,称为不定方程组,有多种解。
令②×3-①得:7x+4y=100;
即:y =(100-7x)/4=25-(7/4)x
由于y 表示母鸡的只数,它一定是自然数,而4 与7 互质,因此x 必须是4 的倍数。我们把它写成:x=4k(k 是自然数),于是y=25-7k,代入原方程组,可得:z=75+3k。把它们写在一起有:
x =4k
y =25 - 7k
z =75+ 3k
一般情况下,当k 取不同数值时,可得到x、y、z 的许多组值。但针对本题的具体问题,由于x、y、z 都是100 以内的自然数,故k 只能取1、2、3 三个值,这样方程组只有以下三组解:
一、 x =4;y =18;z =78
二、 x =8;y =11;z =81
三、 x =12;y =4;z =84