카누

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

카누 투어를 준비하고 있습니다. 카누는 선착장에서 빌릴 수 있으며 모든 카누는 동일합니다. 카누 한 대에는 최대 두 명까지 탈 수 있고, 함께 탄 사람들의 몸무게 합은 정해진 최대 무게를 넘을 수 없습니다. 비용을 최소로 하려면 모든 참가자를 가능한 한 적은 수의 카누에 나누어 태워야 합니다.

다음을 수행하는 프로그램을 작성하세요.

  • 표준 입력에서 카누 한 대에 탈 수 있는 최대 무게, 참가자 수, 그리고 각 참가자의 몸무게를 읽습니다.
  • 규칙에 따라 모든 참가자를 태우는 데 필요한 카누의 최소 개수를 구합니다.
  • 그 결과를 표준 출력에 씁니다.

입력

첫째 줄에 카누 한 대에 탈 수 있는 최대 무게 ww가 주어집니다 (80w20080 \le w \le 200). 둘째 줄에 참가자 수 nn이 주어집니다 (1n300001 \le n \le 30000).

이어지는 nn개의 줄에는 각 참가자의 몸무게가 한 줄에 하나씩 주어지며, 각 몸무게는 55 이상 ww 이하의 정수입니다.

출력

빌려야 하는 카누의 최소 개수를 첫째 줄에 정수 하나로 출력합니다.