題目描述:
資源限制
時間限制:1.0s 記憶體限制:512.0mb
問題描述
有n個人圍成一圈,順序排號(編號為1到n)。從第1個人開始報數(從1到3報數),凡報到3的人退出圈子。從下乙個人開始繼續報數,直到剩下最後乙個人,遊戲結束。
問最後留下的是原來第幾號的那位。
舉個例子,8個人圍成一圈:
1 2 3 4 5 6 7 8
第1次報數之後,3退出,剩下:
1 2 4 5 6 7 8 (現在從4開始報數)
第2次報數之後,6退出,剩下:
1 2 4 5 7 8 (現在從7開始報數)
第3次報數之後,1退出,剩下:
2 4 5 7 8 (現在從2開始報數)
第4次報數之後,5退出,剩下:
2 4 7 8 (現在從7開始報數)
第5次報數之後,2退出,剩下:
4 7 8 (現在從4開始報數)
第6次報數之後,8退出,剩下:
4 7 (現在從4開始報數)
最後一次報數之後,4退出,剩下:
7.所以,最後留下來的人編號是7。
輸入格式
乙個正整數n,(1ac**:
#include
#include
#include
#include
#include
#include
using
namespace std;
int a[
10000];
int vis[
10000];
//記錄資料是否訪問過
intmain()
}if(num==1)
break;if
(i==n)
i=1;
else
i++;}
for(i=
1;i<=n;i++)if
(vis[i]==0
) cout<; cout
}
演算法訓練 篩選號碼
問題描述 有n個人圍成一圈,順序排號 編號為1到n 從第1個人開始報數 從1到3報數 凡報到3的人退出圈子。從下乙個人開始繼續報數,直到剩下最後乙個人,遊戲結束。問最後留下的是原來第幾號的那位。舉個例子,8個人圍成一圈 1 2 3 4 5 6 7 8 第1次報數之後,3退出,剩下 1 2 4 5 6...
藍橋杯 ALGO 75 演算法訓練 篩選號碼
演算法訓練 篩選號碼 時間限制 1.0s 記憶體限制 512.0mb 問題描述 有n個人圍成一圈,順序排號 編號為1到n 從第1個人開始報數 從1到3報數 凡報到3的人退出圈子。從下乙個人開始繼續報數,直到剩下最後乙個人,遊戲結束。問最後留下的是原來第幾號的那位。舉個例子,8個人圍成一圈 1 2 3...
演算法訓練 篩選號碼 (約瑟夫環問題)
問題描述 有n個人圍成一圈,順序排號 編號為1到n 從第1個人開始報數 從1到3報數 凡報到3的人退出圈子。從下乙個人開始繼續報數,直到剩下最後乙個人,遊戲結束。問最後留下的是原來第幾號的那位。舉個例子,8個人圍成一圈 1 2 3 4 5 6 7 8 第1次報數之後,3退出,剩下 1 2 4 5 6...