C++:因子问题
【描述】
任给两个正整数N、M,求一个最小的正整数a,使得a和(M-a)都是N的因子。
【输入】
包括两个整数N、M。N不超过1,000,000。
【输出】
输出一个整数a,表示结果。如果某个案例中满足条件的正整数不存在,则在对应行输出-1
【样例输入】
35 10
【样例输出】
5
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{int N, M;cin >> N >> M;bool flag = false;for (int a = 1; a <=min(N,M-a) ;a++){if (N % a == 0 && N % (M - a) == 0){flag = true;cout << a;break;}}if (!flag)cout << -1;return 0;
}