悬关
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
typedef long long l;
l x, y, n, m, len, x1, y1, g;
l exgcd(l a, l b, l &x, l &y) {
if (b == 0) {
x = 1;
y = 0;
return a;
}
l x2, y2, g = exgcd(b, a % b, x2, y2);
x = y2;
y = x2 - a / b * y2;
return g;
}
int main() {
scanf("%lld%lld%lld%lld%lld", &x, &y, &n, &m, &len);
if (m < n) {
swap(m, n);
swap(x, y);
}
g = exgcd(m - n, len, x1, y1);
if ((y - x) % g != 0) {
printf("Impossible");
return 0;
}
l z = len / g;
x1 *= (y - x) / g;
printf("%lld", (x1 % g + g) % g);
return 0;
}