#include using namespace std; long long gcd(long long a, long long b) { long long x, y, t; if (a > b) { x = a; y = b; } else { x = b; y = a; } while (y != 0) { t = x % y; x = y; y = t; } return x; } int main() { long long N, A, B; cin >> N >> A >> B; long long ans = N;//回答には包除原理を用いる。 ans -= N / A; ans -= N / B; ans += N / (A * B / gcd(A, B));//最小公倍数は、(両数の積)/(それらの最大公約数)で求まる。 cout << ans; return 0; }