#include #include #include #include #include #include #include #include #include #include #include #include #include #define rep(i, n) for(int i = 0; i < (int)(n); ++i) using namespace std; using lint = int64_t; int GCD(int x, int y) {if (x % y) return GCD(y, x % y); return y;} int main() { int A, B; cin >> A >> B; if (GCD(A, B) - 1) { cout << -1 << "\n"; return 0; } vector judge(A * B, 0); rep(i, B) { int now = A * i; while (now < A * B) { judge[now] = 1; now += B; } } int ans = 0; rep(i, A * B) { if (!judge[i]) ++ans; } cout << ans << "\n"; return 0; }