A marble factory has donated a large box of marbles to a kindergarten. Each marble has one out of different colours. The governess needs to divide **all** the marbles between the children in her group. It is acceptable if some children don't get any marbles. However, no child wants marbles of different colours – in other words, all marbles that a child gets need to be the **same colour**.

The governess also knows that children will be jealous if a child gets too many marbles. As an approximation, we will define the **envy level** in the group as the **largest** number of marbles given to one child. Help the governess divide the marbles in order to **minimize** the envy level.

For example, if the box contains red marbles (`RRRR`

) and blue marbles (`BBBBBBB`

) which we have to divide between children, we can achieve an envy level of by dividing the marbles in the following way: `RR`

, `RR`

, `BB`

, `BB`

, `BBB`

. This is the lowest achievable envy level.

#### Input Specification

The first line of input contains two positive integers, , the number of children, and , the number of different colours.

Each of the following lines contains a positive integer from the interval , with the integer in line denoting the number of marbles with colour .

#### Output Specification

The first and only line of output should contain the minimum possible envy level.

#### Sample Input 1

```
5 2
7
4
```

#### Sample Output 1

`3`

#### Sample Input 2

```
7 5
7
1
7
4
4
```

#### Sample Output 2

`4`

## Comments