hdu 圆桌问题(STL(vector)的模拟)

来源:互联网 发布:韩端机器人如何编程 编辑:程序博客网 时间:2024/05/16 12:37
//hdu 圆桌问题(STL(vector)的模拟)#include <iostream>#include <cstdio>#include <vector>using namespace std;const int N=60000;vector<int> v;int flag[N];int n,m;int main(){  int cnt;  int s;  while(cin>>n>>m)  {    s=2*n;    v.clear();    for(int i=1;i<=s;i++)    {      v.push_back(i);      flag[i]=0;    }    cnt=1;    while(s>n)    {      cnt+=m-1;      if(cnt<=s)      {        flag[v[cnt-1]]=1;        v.erase(v.begin()+cnt-1);        if(cnt==s)        {          cnt=1;        }      }      else      {        cnt%=s;        if(cnt==0)        {          cnt=s;        }        flag[v[cnt-1]]=1;        v.erase(v.begin()+cnt-1);        if(cnt==s)        {          cnt=1;        }      }      s--;    }    for(int i=1;i<=2*n;i++)    {      if(flag[i])      {        cout<<"B";      }      else      {        cout<<"G";      }      if(i%50==0)      {        cout<<endl;      }    }    cout<<endl;    cout<<endl;  }  return 0;}

0 0
原创粉丝点击