ホームページ >バックエンド開発 >PHPチュートリアル >PHP モンキーは簡単な方法で王を選びます

PHP モンキーは簡単な方法で王を選びます

WBOY
WBOYオリジナル
2016-07-30 13:30:241316ブラウズ

猿が王を選ぶためのコードの私個人的な要約とコメントは、初心者にとって非常に役立ちます。なぜなら、私がこれを学んだとき、理解するのに 2 ~ 3 時間かかったからです。もちろん、コードは常に変更されます。以前、5〜6行で書かれたもっと簡潔なものを見たことがありますが、これは人によって異なるため、初心者は段階的に理解する必要があります。
2015 8.24 0:46

<code><span>1</span><span><span>function</span><span>getKing</span><span>(<span>$m</span>,<span>$n</span>)</span>{</span><span>2</span><span>$arr</span> = <span>array</span>();            <span>//定义一个存放猴子的数组;</span><span>3</span><span>$a</span> = <span>"a"</span>;                  <span>//定义猴子编号;</span><span>4</span><span>for</span>(<span>$i</span>=<span>0</span>;<span>$i</span><<span>$m</span>;<span>$i</span>++){      <span>//开始循环给每个猴子附上编号;</span><span>5</span><span>$arr</span>[] = <span>$a</span>++;         <span>//循环a到M(给出猴子的数量);</span><span>6</span>       }  
<span>7</span><span>8</span><span>$i</span> = <span>0</span>;                    <span>//定义一个报数的变量;</span><span>9</span><span>while</span>(count(<span>$arr</span>)><span>1</span>){      <span>//获取猴子个数,只要猴子不小于1就一直循环</span><span>10</span><span>if</span>(<span>$i</span>%<span>$n</span> == <span>0</span>){        <span>//报的数对N取余(设定的数,报道几就对几取余,余数为0,则那只猴子被提出游戏)</span><span>11</span><span>unset</span>(<span>$arr</span>[<span>$i</span>]);   <span>//删除余数为零的数组元素</span><span>12</span>          }<span>else</span>{
<span>13</span><span>$arr</span>[] = <span>$arr</span>[<span>$i</span>]; <span>//如果为0则删除数组元素,否则没被删除的,则增加至队尾,下一轮继续报数,</span><span>14</span><span>unset</span>(<span>$arr</span>[<span>$i</span>]);   <span>//删除数组刚才添加的那个数组元素,抽象理解为 : 需要的数例如为5,1 2 3 4 号位的猴子没有报道,则添加 </span><span>16</span>          }                      <span>//1 2 3 4为队尾,下轮继续,而5号位的猴子正好报道5,被提出游戏,6号位的猴子从1开始报,反复如此,</span><span>17</span><span>$i</span>++;
<span>18</span>      }
<span>19</span><span>return</span><span>$arr</span>;
<span>20</span>   }
<span>21</span>   print_r(getKing(<span>20</span>,<span>5</span>));
</code>

著作権表示: この記事はブロガーによるオリジナル記事であり、ブロガーの許可なしに転載することはできません。

上記は、PHP Monkey King の一般的な理解を内容の側面も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。