mirror of
https://github.com/Kiritow/OJ-Problems-Source.git
synced 2024-03-22 13:11:29 +08:00
50 lines
817 B
C++
50 lines
817 B
C++
|
#include <cstdlib>
|
||
|
#include <iostream>
|
||
|
#include<string>
|
||
|
#include <cstdio>
|
||
|
#include<algorithm>
|
||
|
#include <sstream>
|
||
|
#include <math.h>
|
||
|
using namespace std;
|
||
|
int n, a, b;
|
||
|
int con[15];
|
||
|
int run(int a, int b)
|
||
|
{
|
||
|
int cnt = 0;
|
||
|
int sum = 2 * a;
|
||
|
int index = b % (2 * a);
|
||
|
if(index == 0) index = sum;
|
||
|
while(index > a)
|
||
|
{
|
||
|
sum--;
|
||
|
index = (index + b - 1) % sum;
|
||
|
if(index == 0) index = sum;
|
||
|
cnt ++;
|
||
|
}
|
||
|
return cnt;
|
||
|
}
|
||
|
int solve(int a)
|
||
|
{
|
||
|
for(int i=a+1; ; i++)
|
||
|
{
|
||
|
if(run(a, i) == a) return i;
|
||
|
}
|
||
|
}
|
||
|
void init()
|
||
|
{
|
||
|
for(int i=1; i<=14; i++)
|
||
|
{
|
||
|
con[i] = solve(i);
|
||
|
}
|
||
|
}
|
||
|
int main()
|
||
|
{
|
||
|
init();
|
||
|
while(cin>>n)
|
||
|
{
|
||
|
if(n == 0) break;
|
||
|
else cout<<con[n]<<endl;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|