T227734 约瑟夫问题

 

 

ooooook

我们回来更新思路部分:

其实对这道题我的想法还是往简单去考虑的

就是用一个数组来表示人 ,用三个计数器来表示

1.轮到的人、

2.轮过几个人

3.出去了几个人。

 

代码部分:

#include <iostream>

using namespace std;

int main()
{

  int n,m,n1[101]={0},jsq=0;
  cin>>n>>m;


  for(int i=1,j=0;jsq!=n;i++){

 

    if(i>n){i=1;}

 

    if(n1[i]==0){
      j++;//若这人没出去 则j++
      if(j==m){
      cout<<i<<" ";
      j=0;jsq++;
      n1[i]=1;
    }
  }


  }

return 0;
}

 (思路过会写 赶进度)

 

posted @ 2022-03-08 18:39  syxw  阅读(31)  评论(0编辑  收藏  举报