POJ 1012


#include<iostream>
using namespace std;
int Check(int k, int m)
{
    int i, start, len;
    len = 2*k;
    start = 0;
    for(i=1; i<=k; i++)
    {
        start = (start -1 + m) % len;
        len--;
        if(start < k)
            return 0;
    }
    return 1;
}

int main()
{
    int k, m, a[14], i;
    
    for(i=1; i<=13; i++)
    {
        for(m=i+1; ; m++)
        {
            if(Check(i, m))
            {
                a[i] = m;
                break;
            }
        }
    }
    while(cin>>k)
    {
        if(k != 0)
            printf("%d ", a[k]);
        else
            break;
    }
    return 0;
}

关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。 

技术网站地址: vmfor.com

原文地址:https://www.cnblogs.com/gavinsp/p/4563206.html