메뉴 건너뛰기

문제

00c25 정해진 시간 안에 최대한 많은 과제하기 0  

시간메모리제출 올바른 답 비율
1초64MB
157
46
29.3%


나의 횟수나의 최근 판정시도 성공 비율
4942
85.7%
정해진 시간 안에 최대한 많은 과제하기  

정해진 시간 안에 최대한 많은 과제를 하고자 한다. 그런데 각각의 과제를 완료하려면 일정 양의 시간이 필요하며, 한 번에 하나의 과제만 수행할 수 있다. 수행하는 과제의 순서는 자유롭게 선택할 수 있다.

정해진 시간 안에 완료 가능한 최대 과제 수를 출력하는 프로그램을 작성하시오.

입력

입력 파일의 첫 번째 줄에 과제를 수행할 수 있는 전체 시간 T(0<=T<=100000)분이 주어진다. 두 번째 줄에 과제 수 C(0<=C<=100)가 주어진다. 세 번째 줄부터 총 C개 줄에 걸쳐서 각각의 과제를 수행하는데 필요한 시간들이 분 단위로 주어진다. 각각의 과제를 수행하는데 필요한 시간은 최대 100000 분이다.

출력

주어진 전체 시간 T 내에 완료 가능한 최대 과제수를 출력한다.

※ 예시 1 : 주어진 전체 시간은 6분이다. 과제 수는 3개이며 첫 번째 과제는 3분, 두 번째 과제는 6분, 세 번째 과제는 3분이 필요하다. 정답은 2이다. 왜냐하면 전체 시간 6분 안에 완료할 수 있는 과제의 최대수는 2개, 즉, 첫 번째 과제와 세 번째 과제를 완료할 수 있다.

예시 2 : 세 번째, 네 번째, 다섯 번째 과제를 6분 내에 완료할 수 있다. 따라서 6분 내에서 4개 이상의 과제를 완료할 수는 없다.

 

예시 1 :

예시
1입력
6
3
3
6
3
출력
2
위로