/*** author: yuji9511 ***/ #include using namespace std; typedef long long ll; typedef pair lpair; const ll MOD = 1e9 + 7; const ll INF = 1e18; #define rep(i,m,n) for(ll i = (m); i < (n); i++) #define rrep(i,m,n) for(ll i = (m); i >= (n); i--) #define printa(x,n) for(ll i = 0; i < n; i++){ cout << (x[i]) << " \n"[i==n-1];}; void print() {} template void print(Head&& head, Tail&&... tail){ cout << head << " \n"[sizeof...(tail) == 0]; print(forward(tail)...);} inline ll gcd(ll a,ll b){return b?gcd(b,a%b):a;} inline ll lcm(ll a,ll b){return a/gcd(a,b)*b;} int main(){ cin.tie(0); ios::sync_with_stdio(false); ll T,A,B; cin >> T >> A >> B; ll ans = (T+A-1) / A + (T+B-1) / B; double d = (double) A * (double) B; if(d <= 9e18){ ans -= (T + lcm(A,B)-1) / lcm(A,B); } print(ans); }