网上大多都是用bfs来写的,不过其实这也是一道规律题;
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>
#define INF 1<<30
#define N 210
using namespace std;
int gcd(int a,int b)
{
if(a%b==0)
return b;
return gcd(b,a%b);
}
int main()
{
int s,n,m;
while(1)
{
scanf("%d%d%d",&s,&n,&m);
if(s==0&&n==0&&m==0)
break;
if(s%2)
{
printf("NO\n");
continue;
}
s=s/gcd(s,gcd(n,m));
if(s%2)
printf("NO\n");
else
printf("%d\n",s-1);
}
return 0;
}