找数字

题目描述

已知两个正整数 a,b 。现有一个大于 1 的整数 x ,将其作为除数分别除 a,b 得到的余数相同。

请问满足上述条件的 x 的最小值是多少?数据保证 x 有解。

输入

共一行,两个整数 a , b 。

输出

输出这个最小数 x 。

样例输入 Copy
4 6
样例输出 Copy
2
提示

样例解释
4 mod 2 = 0 。
6 mod 2 = 0 。

数据规模与约定
对于 100% 的数据保证: 2 ≤ a , b ≤ 100 , 数据保证 x 有解 。

代码实现:

#pragma GCC optimize(2)
#pragma GCC optimize(3)
#include 
#include 
using namespace std;
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);  
	int a,b,c,x;
	long long int n = 1000000, ans = 1000;
	cin >> a >> b;
	for(long int i = 1;i <= n;i++)
	{
	 x = i;
		if(x > 1)	
		{
			if(a % i == b % i && ans > x)

			ans = x;
		}			
	}
    cout << ans;
	return 0;
} 

你可能感兴趣的:(算法,c++)