Powered by:AB_IN 局外人
P1283: 【出圈】
掛一下經過老師的代碼優化過的PY代碼
while True:
try:
n,m=map(int,input().split())
lst=[i+1 for i in range(n)]
while len(lst)>1:
if m%len(lst):
i= m%len(lst)-1
else:
i=len(lst)-1
lst=lst[i+1:]+lst[:i]
print(lst[0])
except:
break
C++
#include <bits/stdc++.h>
using namespace std;
queue<int>q;
int main()
{
int n,m,num;
while(cin>>n>>m){
for(int i=1;i<=n;i++){
q.push(i);
}
num=0;
while(q.size()>1){
num++;
int tmp=q.front();
q.pop();
if(num%m!=0)
q.push(tmp);
}
cout<<q.front()<<endl;
q.pop();
}
return 0;
}
完結。