4 条题解
-
0
#include<bits/stdc++.h> using namespace std; int n,m,p[10086],cntd,cnt=1; int main(){ cin>>n>>m; cntd=n; for(int i=1;i<=n;i++){ p[i]=i; }//编号 p[n+1]=-2;//碰到-2就重新从1开始数 for(int i=1;cntd>1;i++){ if(p[i]==-2){ i=0; continue; } if(p[i]==-1)continue;//被淘汰的跳过 if(cnt%m==0){ p[i]=-1; cntd--;//人数 }//淘汰 cnt++; } for(int i=1;i<=n;i++){ if(p[i]>0)cout<<p[i]; } return 0; }
信息
- ID
- 1028
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- 7
- 标签
- 递交数
- 277
- 已通过
- 74
- 上传者