#include typedef long long ll; ll calc(ll x, ll y) { if( y == 0 ) return x; return calc( y, x%y ); } ll calc2(ll x, ll y) { ll z = calc( y, x%y ); return (x/z) * (y/z) * z; } ll calc3(ll x, ll y, ll z) { int i, c=1, cnt=1; while( cnt ) { cnt=0; for( i = 2; i <= x; i++) { if( !(x%i) && !(y%i) && !(z%i) ) { c *= i; x /= i; y /= i; z /= i; cnt++; } } } for( i = 2; i <= x; i++) { if( !(x%i) && !(y%i) ) { c *= i; x /= i; y /= i; } } for( i = 2; i <= x; i++) { if( !(x%i) && !(z%i) ) { c *= i; x /= i; z /= i; } } for( i = 2; i <= y; i++) { if( !(y%i) && !(z%i) ) { c *= i; y /= i; z /= i; } } return c*x*y*z; } int main(void) { ll i, n, a, b, c, ab, bc, ac, abc, cnt=0; scanf("%lld %lld %lld %lld", &n, &a, &b, &c); if( a == 1 || b == 1 || c == 1 ){ printf("%d\n", n); return 0; } ab = calc2(b, a); bc = calc2(c, b); ac = calc2(c, a); abc = calc3(a, b, c); printf("%lld\n", (n/a)+(n/b)+(n/c)-(n/ab)-(n/bc)-(n/ac)+(n/abc) ); return 0; }