Heim > Artikel > Backend-Entwicklung > PHP-Affe wählt den König
Methode 1:
function monkeyKing($n,$m) { $arr=range(1,$n); $i=0; while (count($arr)>1) { for($i=1;$i<=$m-1;$i++) { array_push($arr, array_shift($arr)); } array_shift($arr); } echo "$arr[0]"; } monkeyKing(6,4);//5
Methode 2:
function king($m ,$n) { //构造数组 $arr=range(1,$m); $i = 0 ; //设置数组指针 while(count($arr)>1) { //遍历数组,判断当前猴子是否为出局序号,如果是则出局,否则放到数组最后 if(($i+1)%$n ==0) { unset($arr[$i]) ; } else { array_push($arr ,$arr[$i]) ; //本轮非出局猴子放数组尾部 unset($arr[$i]) ; //删除 } $i++ ; } return $arr ; } var_dump(king(6,4));
Methode 3: //Ich verstehe diese Methode nicht sehr gut. Ich hoffe, dass jeder seine Meinung hinterlassen kann.
function yuesefu($n,$m) { $r=0; for($i=2; $i<=$n; $i++) { $r=($r+$m)%$i; } return $r+1; } print_r(yuesefu(3,3));//2
Das Obige stellt PHP Monkey King vor, einschließlich des Inhalts. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.