約瑟夫環問題
//從第start人開始計數
publicint[]Jose(inttotal
{
intj
//count數組存儲按出列順序的數據
int[]count=newint[total+
//s數組存儲初始數據
int[]s=newint[total+
//對數組s賦初值
for(inti=
{
s[i]=i;
}
//按出列次序依次存於數組count中
for(inti=total;i>=
{
start=(start+alter
if(start==
start=i;
count[k]=s[start];
k++;
for(j=start+
s[j
}
count[k]=s[
//結果返回
returncount;
}
From:http://tw.wingwit.com/Article/program/net/201311/13563.html