题目如下
有6个人都是4月11生的,并且都属牛,某年他们岁数的连乘积为17597125,问这一年他们岁数之和是多少
算法核心:
因为他们都属牛,那么可以确定他们岁数相同,或是相差12的倍数,那么我们就一个人的岁数为基础,在他的岁数的基础上+12的倍数得到其他人的岁数,然后每次推理出六个人的岁数,我们就要将每个人的岁数连乘看是否为17597125
// 题目:有6个人都是4月11生的,并且都属牛,某年他们岁数的连乘积为17597125, 问这一年他们岁数之和是多少
// 解题人:朦胧之影 http://be-evil.org
$a = $b = $c = $d = $e = $f = 1;
for ($a = 1; $a<=15; $a++) {
for ($i = 0; $i <=10; $i++) {
$b = $a + $i * 12;
for ($i2 = 0; $i2 <= 10; $i2++) {
$c = $a + $i2 * 12;
for ($i3 =0;$i3 <= 10; $i3++) {
$d = $a + $i3 * 12 ;
for ($i4 = 0; $i4 <= 10; $i4++) {
$e = $a + $i4 * 12;
for ($i5 = 0; $i5 <=10; $i5++) {
$f = $a + $i5 * 12;
if ( $a * $b * $c * $d * $e * $f == 17597125 ) {
echo '张三= '. $a;
echo '李四= '. $b;
echo '王五= '. $c;
echo '赵六= '. $d;
echo '田七= '. $e;
echo '王二麻子= '. $f;
echo "和=". ($a + $b + $c + $d + $e + $f);
echo '
';
break;
}
}
}
}
}
}
}