#include <bits/stdc++.h>
using namespace std;
int sum_count(int n, int m1, int m2, int m3) {
  int arr[4005];
  arr[0] = 0;
  for (int x = 1; x <= n; x++) {
    if (x - m1 < 0) {
      arr[x] = INT_MIN;
    } else if (x - m1 == 0) {
      arr[x] = 1;
    } else {
      int p1 = arr[x - m1] + arr[m1];
      if (p1 < 0 && x - m2 < 0) {
        arr[x] = INT_MIN;
      } else if (p1 < 0 && x - m2 == 0) {
        arr[x] = 1;
      } else {
        if (x - m2 < 0) {
          arr[x] = p1;
          continue;
        }
        int p2 = arr[x - m2] + arr[m2];
        if (p2 < 0 && x - m3 == 0 && p1 < 0) {
          arr[x] = 1;
        } else if (p2 < 0 && x - m3 < 0 && p1 < 0) {
          arr[x] = INT_MIN;
        } else {
          if (x - m3 < 0 && x - m2 >= 0) {
            arr[x] = max(p1, p2);
          } else {
            int p3 = arr[x - m3] + arr[m3];
            arr[x] = max(max(p1, p2), p3);
          }
        }
      }
    }
  }
  return arr[n];
}
int main() {
  int n, a, b, c;
  cin >> n >> a >> b >> c;
  vector<int> p;
  p.push_back(a);
  p.push_back(b);
  p.push_back(c);
  sort(p.begin(), p.end());
  int m1 = p[0];
  int m2 = p[1];
  int m3 = p[2];
  int ans = sum_count(n, m1, m2, m3);
  cout << ans;
  return 0;
}
