【codevs1282】约瑟夫问题

problem

solution

codes

//不好玩
#include<iostream>
using namespace std;
int n, m, a[30010], r, p;
int main(){
    cin>>n>>m;
    for(int i = 1; i <= n; i++)a[i]=i;
    r = n;  p = 1;
    while(r>1){
        p = (p+m-1)%r;
        if(p==0)p=r;
        cout<<a[p]<<" ";
        for(int i = p; i <= r-1; i++)a[i]=a[i+1];
        r--;
    }
    cout<<a[1]<<"\n";
    return 0;
}
posted @ 2018-06-02 21:07  gwj1139177410  阅读(114)  评论(0编辑  收藏  举报
选择