程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php猴子選大王問題解決方法,猴子大王

php猴子選大王問題解決方法,猴子大王

編輯:關於PHP編程

php猴子選大王問題解決方法,猴子大王


本文實例講述了php猴子選大王問題解決方法。分享給大家供大家參考。具體分析如下:

問題描述:

一群猴子排成一圈,按1,2,...,n依次編號。然後從第1只開始數,數到第m只,把它踢出圈,從它後面再開始數,再數到第m只,在把它踢出去...,如此不停的進行下去,直到最後只剩下一只猴子為止,那只猴子就叫做大王。要求編程模擬此過程,輸入m、n,
輸出最後那個大王的編號。

解決方法:

<?php
function king($m, $n) {
 for($i = 1;$i < $m + 1;$i++) {
 //構建數組
  $arr[] = $i;
 }
 $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(100,5));
?>

希望本文所述對大家的php程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved