POJ 2244

简介: /* 大致题意:n个城市,先把1号断电,继而每隔m断电使标号为2的最后被限电; 转化为(n-1)个城市,最后断电的为标号为1的城市,求最小的m */ #include bool is_joseph(int m,int n) { int i,j; int s=0;...
/*
大致题意:n个城市,先把1号断电,继而每隔m断电使标号为2的最后被限电;
转化为(n-1)个城市,最后断电的为标号为1的城市,求最小的m
*/ 
#include<stdio.h>
bool is_joseph(int m,int n)
{
    int i,j;
    int s=0;
    for(i=2;i<=n;i++)
        s=(s+m)%i;
    if((s+1)==1)
        return 1;
    return 0;
}
int main()
{
    int i,j,k;
    int m,n,s;
    while(scanf("%d",&n),n)
    {
        /*
        加 不加else, 
        因为执行m++后,m又变成了2
        都成死循环啦 
        while(1)
        {
            m=2;
            if(is_joseph(m,n-1))
                break;
            else
              m++;
            
        }
        printf("%d\n",m);   
        */  
        m=2;  
        while(1)
        {
            if(is_joseph(m,n-1))
            {
                printf("%d\n",m); 
                break;
            }
            else
              m++;
            
        }                                    
    }
    return 0;
}
        

 

目录
相关文章
|
人工智能
POJ 3104 Drying
POJ 3104 Drying
POJ 1936 All in All
POJ 1936 All in All
73 0
|
人工智能 机器学习/深度学习
|
人工智能
POJ 1936 All in All
Description You have devised a new encryption technique which encodes a message by inserting between its characters randomly generated strings in a clever way.
788 0
|
存储 索引
|
人工智能 vr&ar
|
机器学习/深度学习