第四章 循环结构的程序设计-1080:余数相同问题

1080:余数相同问题

时间限制: 1000 ms 内存限制: 65536 KB
提交数: 20483 通过数: 13265
【题目描述】
已知三个正整数a,b,c。现有一个大于1的整数x,将其作为除数分别除a,b,c,得到的余数相同。

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

【输入】
一行,三个不大于1000000的正整数a,b,c,两个整数之间用一个空格隔开。

【输出】
一个整数,即满足条件的x的最小值。

【输入样例】
300 262 205
【输出样例】
19


思路:将输入数分别除a,b,c,余数相同,并且 求最小值,需设最小参数,如果比最小的参数还小就更新

#include<iostream>
#include<cstdio>
#include<math.h>
using namespace std;
int main()
{
	int a,b,c,x;
	long int n = 1000000,min1 = 1000;
	scanf("%d%d%d",&a,&b,&c);
	for(long int i = 1;i <= n;i++)
	{
	 x = i;
		if(x > 1)	
		{
			if(a % i == b % i && b % i == c % i && a % i == c % i && min1 > x)//余数相同,保存最小的值

			min1 = x;
		}
			
	}
 printf("%d",min1);
	return 0;
} 
发布了295 篇原创文章 · 获赞 2 · 访问量 6254

猜你喜欢

转载自blog.csdn.net/zqhf123/article/details/104917648
今日推荐