求鸡蛋数

424 查看


一大早起来就看到一个朋友发了这么一张图给我,最后思考了一下,算法如下:

<?php
$start = 9; // 初始范围
$end = 10000; // 结束范围
$find = array(); // 查询出来的鸡蛋个数数组
do {
    $level = array();

    for($i=1; $i<=9; $i++) {
        $level[$i] = $start%$i;
    }
    if($level[1] === 0 && $level[2] === 1 && $level[3] === 0 && $level[4] === 1 && $level[5] === 4 && $level[6] === 3 && $level[7] === 0 && $level[8] === 1 && $level[9] === 0) {
        $find[] = $start;
    }
    $start += 9;
} while($start<$end);

var_dump($find);

以下是别人写的一个:

function egg($n) {
    $find = [];
    for($i=9;$i<=$n;$i++) {
        if($i % 63 == 0 && $i % 8 == 1 && $i % 5 == 4 && $i%6 == 3) {
        $find[] = $i;
        }
    }
    return $find;
}

这个和@星际蜘蛛 所表达的应该是一个意思
如果谁有更好的思路,请留言告诉我哈。