# Cut Ribbon

## 题意翻译

给一长度为n的缎带，要求将其剪成若干长度为a,b,c的缎带，且缎带数量尽可能多。
输入格式：
输入仅一行，四个正整数n,a,b,c(n,a,b,c≤4000)。
输出格式：
输出仅一行，即缎带数量的最大值。

## 题目描述

Polycarpus has a ribbon, its length is $ n $ . He wants to cut the ribbon in a way that fulfils the following two conditions:
- After the cutting each ribbon piece should have length $ a $ , $ b $ or $ c $ .
- After the cutting the number of ribbon pieces should be maximum.
Help Polycarpus and find the number of ribbon pieces after the required cutting.

## 输入输出格式

### 输入格式

The first line contains four space-separated integers $ n $ , $ a $ , $ b $ and $ c $ $ (1<=n,a,b,c<=4000) $ — the length of the original ribbon and the acceptable lengths of the ribbon pieces after the cutting, correspondingly. The numbers $ a $ , $ b $ and $ c $ can coincide.

### 输出格式

Print a single number — the maximum possible number of ribbon pieces. It is guaranteed that at least one correct ribbon cutting exists.

## 输入输出样例

### 输入样例 #1

```
5 5 3 2
```

### 输出样例 #1

```
2
```

### 输入样例 #2

```
7 5 5 2
```

### 输出样例 #2

```
2
```

## 说明

In the first example Polycarpus can cut the ribbon in such way: the first piece has length 2, the second piece has length 3.
In the second example Polycarpus can cut the ribbon in such way: the first piece has length 5, the second piece has length 2.