该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我也来个代码,用了迭代,这PHP迭代返回值总是出错,直接在里面输出了
$n=100;//人数
$nj=5;//
function ar($m)//初始化数组。
{
for($i=0;$i
{
$ar[$i][0]=$i+1;
$ar[$i][1]=0;
$ar[$i][2]=0;//在哪次循环被杀掉。
}
return $ar;
}
$ar=ar($n); //
$ra[0]=0;
$ra[1]=$n;
$k=0;//第几次循环
function getid($a,$ra,$k,$n,$nj)
{
if($ra[1]>=$nj)
{
$h=$ra[0];
$j=0;
$k=$k+1;
for($i=0;$i
{
$tf=$a[$i][1];
if($tf==0)
{
$h=$h+1;
$j=$j+1;
}
if($h==$nj)
{
$h=0;
$a[$i][1]=1;
$a[$i][2]=$k;
} }
$ra[0]=$h;
$ra[1]=$j;
getid($a,$ra,$k,$n,$nj);
}
else
{
for($i=0;$i
{
if($a[$i][1]==0)
{
$show=$a[$i][0];
echo "**NO".$show."
";
} }
}
}
getid($ar,$ra,$k,$n,$nj);
?>
结果是:
**NO26
**NO47
**NO51
**NO79