萌新刚学OI,50分求助!
查看原帖
萌新刚学OI,50分求助!
658786
STUDENT00楼主2022/10/17 18:37

纯粹的二元一次方程求最小整数解,结果50分……

#include<bits/stdc++.h>
using namespace std;
int x,y,m,n,l,a,b,c,d,X,Y;
void exgcd(int a,int b){
	if(!b){
		X=1;
		return;
	}
	exgcd(b,a%b);
	int t=X;
	X=Y;
	Y=t-a/b*Y;
}
int main(){
	scanf("%d%d%d%d%d",&x,&y,&m,&n,&l);
	a=n-m,b=l,c=__gcd(a,b),d=x-y;
	exgcd(a,b);
	if(c%d) printf("Impossible");
	else printf("%d",(d*X%b+b)%b);
	return 0;
}
2022/10/17 18:37
加载中...