Niebieskie ksi.eczki
IV Olimpiada Informatyczna 1996/1997

Task: KAJ
Author: Wojciech Rytter
Canoes

III stage contest  
Source fileKAJ.??? (e.g. PAS,C, CPP)
Executable fileKAJ.EXE
Input fileKAJ.IN
Output fileKAJ.OUT

We are organizing a canoe tour. Canoes can be hired at the harbour. Canoes are all alike. A canoe can take at most two persons. The sum of weights of these persons cannot exceed the fixed maximal weight. We want to pay as little as possible so we should try to place all participants of our tour in the minimal number of canoes.

Task

Write a program that:

Input

In the first line of the text file KAJ.IN there is one integer w, 80<=w<=200, which is the maximal weight of a canoe crew.

In the second line there is one integer n, 1 <= n <= 30000, which is the number of participants of the tour.

Each of the following n lines contains one integer from the range [5..w]. These numbers equal the weights of the participants.

Output

In the first line of the text file KAJ.OUT there should be written one integer - the minimal number of canoes that should be hired.

Example
For the text file KAN.IN:

100
9
90
20
20
30
50
60
70
80
90
the correct result is the text file KAJ.OUT:
6