题目链接:http://noi.openjudge.cn/ch0201/2723/
总时间限制: 1000ms 内存限制: 65536kB
描述
任给两个正整数N、M,求一个最小的正整数a,使得a和(M-a)都是N的因子。
输入
包括两个整数N、M。N不超过1,000,000。
输出
输出一个整数a,表示结果。如果某个案例中满足条件的正整数不存在,则在对应行输出-1
样例输入
35 10
样例输出
5
1 #include <stdio.h> 2 int main(int argc, char *argv[]) 3 { 4 int N,M,a=0,t; 5 scanf("%d%d",&N,&M); 6 t=M/2; 7 for(a=1;a<=t;a++) 8 { 9 if( N%a==0 && (N%(M-a)==0) ) { t=-1; break; } 10 } 11 if(t!=-1) printf("-1\n"); 12 else printf("%d\n",a); 13 return 0; 14 }