상현이의 수강신청 대작전
면접 대비시간 제한1초메모리 제한1024 MB
각 과목의 선호도와 학점이 주어질 때, 총 학점이 M 이하이면서 선호도 합이 최대가 되도록 최소 한 과목을 고르고 그 번호를 출력합니다.
문제
KSA에서는 수강하고 싶은 과목을 골라 수강신청을 해야 한다. 상현이는 총 학점이 학점을 초과하면 GPA를 도저히 유지할 수 없을 것 같아, 총 학점을 학점 이하로 맞춰 과목을 신청하려고 한다. 수강신청 가능한 과목은 총 개이며, 1번부터 번까지 번호가 붙어 있다. 번 과목에 대한 상현이의 선호도는 이고, 학점은 이다. 총 학점이 학점 이하이면서 선호도의 총합이 최대가 되도록 수강신청하는 방법을 구하는 프로그램을 작성하시오. 각 과목은 최대 한 번씩만 선택할 수 있으며, 최소 한 과목 이상을 신청해야 한다.
입력
첫 번째 줄에 두 정수 ()과 ()이 주어진다. 다음 개의 줄 중 번째 줄에는 두 정수 ()와 ()이 주어진다.
출력
첫 번째 줄에 문제의 조건을 만족하는 수강신청 방법이 존재하면 신청할 과목의 수를 출력하고, 존재하지 않으면 -1을 출력한다. 방법이 존재하면 두 번째 줄에 신청할 과목의 번호를 오름차순으로 출력한다. 정답이 여러 개이면 그중 아무거나 출력해도 된다.