1 条题解

  • 1
    @ 2024-12-11 19:21:09
    #include<bits/stdc++.h>
    #define int long long 
    using namespace std;
    int s1,s2;
    void exgcd(int a,int &x,int b,int &y){
    	if(b==0){
    		x=1,y=0;
    		return;
    	}
    	exgcd(b,x,a%b,y);
    	int t=x;
    	x=y;
    	y=t-(a/b)*y;
    }
    signed main(){
    	int x,y,n,m,l;
        cin>>x>>y>>m>>n>>l;
    	int A=n-m,B=x-y;
    	if(A<0){
    		A=-A;
    		B=-B;
    	}
    	int g=__gcd(A,l);
    	exgcd(A,s1,l,s2);
    	if(B%g!=0){
    		cout<<"Impossible";
    		return 0;
    	}
    	cout<<((s1*(B/g))%(l/g)+(l/g))%(l/g);
    }
    
    • 1

    信息

    ID
    580
    时间
    1000ms
    内存
    128MiB
    难度
    10
    标签
    (无)
    递交数
    1
    已通过
    1
    上传者