北大OJ1061

来源:互联网 发布:ubuntu 文字界面 编辑:程序博客网 时间:2024/06/04 23:36
#include<iostream>using namespace std;long long extend_gcd(long long a,long long b,long long &x,long long &y){long long t,m;if((b==0)&&(a==0))return -1;if(b==0){x=1;y=0;return a;}else{m=extend_gcd(b,a%b,x,y);    t=x;x=y;y=t-(a/b)*y;}return m;}int main(){long long x,y,m,n,L,X,Y,d,r;while(cin>>x>>y>>m>>n>>L){d=extend_gcd(n-m,L,X,Y);r=L/d;if((x-y)%d)cout<<"Impossible"<<endl;else cout<<((x-y)/d*X%r+r)%r<<endl;}return 0;}
0 0