信息学奥赛一本通C++语言——1080:余数相同问题

【题目描述】
已知三个正整数a,b,c(被除数)。现有一个大于1的整数x(除数),将其作为除数分别被a,b,c除,得到的余数相同。

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

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

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

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

#include<cstdio>
int main(){
	int a,b,c;
	scanf("%d %d %d",&a,&b,&c);
	int x;
	for(x=2;;x++){
		if((a%x==b%x)&&(b%x==c%x)){
			break;
		}
	}	
	printf("%d",x);
	return 0;
}
#include<cstdio>
int main(){
	int a,b,c;
	scanf("%d %d %d",&a,&b,&c);
	int x=2;
	while(1){
		if((a%x==b%x)&&(b%x==c%x)){
			break;
		}
		x++;
	}	
	printf("%d",x);
	return 0;
}
发布了107 篇原创文章 · 获赞 32 · 访问量 3262

猜你喜欢

转载自blog.csdn.net/weixin_46272402/article/details/104513322