• 约瑟夫


    #include<stdio.h>
    int k;
    int M;
    int step[100];
    int yue(int m)
    {
     int a=0;
     int wo=0;
     for(int i=0;;i++)
     {
      if(wo==k)
       return 1;
      if(step[i%(2*k)]==0)
       continue;
      else
      {
       a++;
       if(a==m)
       {
        if(step[i%(2*k)]<=k)
         return 0;
        else
        {
         step[i%(2*k)]=0;
         wo++;
         a=0;
        }
       }
      }
     }
    }
    int main()
    {
     //freopen("in.txt","r",stdin);
     while(scanf("%d",&k)&&k!=0)
     {
      for(int i=k+1;;i++)
      {
       for(int j=0;j<2*k;j++)
       step[j]=j+1;
       if(yue(i))
       {
        printf("%d ",i);
        break;
       }
      }
     }
     return 0;
    }

  • 相关阅读:
    模拟22
    模拟21
    模拟20
    模拟19
    晚测11
    Redis 内存模型
    Redis AOF重写
    基础省选题选做
    八年级上 期中考试祭
    P2049 魔术棋子 题解
  • 原文地址:https://www.cnblogs.com/452035305qq/p/6181847.html
Copyright © 2020-2023  润新知