열쇠 재배치 2
시간 제한2초메모리 제한512 MB
n개의 열쇠마다 끼울 수 있는 열쇠 구멍 목록과 제한 시간 k가 주어질 때, 모든 열쇠를 비용 합이 k 이하가 되도록 배정할 수 있는지 판정합니다.
문제
효빈이는 영선회사의 기밀을 빼내려고 잠입한 스파이다. 이제 보안장치 하나만 풀면 기밀에 닿는다.
보안장치는 두 줄로 되어 있다. 위 줄에는 1번부터 번까지 열쇠구멍이, 아래 줄에는 1번부터 번까지 열쇠가 같은 순서로 놓여 있다. 효빈이는 모든 열쇠를 서로 다른 열쇠구멍에 하나씩 꽂아야 한다. 한 열쇠가 여러 열쇠구멍에 맞을 수 있고 한 열쇠구멍에 여러 열쇠가 맞을 수 있지만, 열쇠 하나는 한 번만 쓸 수 있고 열쇠구멍 하나에는 열쇠 하나만 들어간다.
번 열쇠를 번 열쇠구멍에 꽂는 데는 두 자리 사이의 거리만큼, 즉 초가 걸린다. 예를 들어 3번 열쇠를 5번 열쇠구멍에 꽂으면 2초가 걸린다. 전체 시간은 열쇠마다 든 시간의 합이다.
보안장치를 오래 붙잡고 있으면 영선회사 사장 영선이에게 스파이인 것이 들키므로, 효빈이는 초 안에 끝내야 한다. 효빈이는 손이 빠르지만 필요한 시간이 얼마인지까지는 알지 못한다. 가장 빠른 방법으로도 초를 넘긴다면 안전을 위해 아예 시도하지 않을 생각이다.
효빈이를 대신해, 모든 열쇠를 꽂는 데 드는 최소 시간이 초 이하인지 판별하라.
입력
첫째 줄에 열쇠와 열쇠구멍의 개수 , 들키지 않는 최대 시간 가 주어진다. (, )
다음 개 줄 중 번째 줄에는 정수 가 먼저 주어지고, 이어서 개의 정수가 주어진다. 는 번 열쇠가 열 수 있는 열쇠구멍의 개수이고, 뒤따르는 개의 정수는 그 열쇠구멍의 번호다. ()
출력
모든 열쇠를 초 안에 꽂을 수 있으면 YES를, 그렇지 않으면 NO를 출력한다.
모든 열쇠를 한꺼번에 꽂는 방법이 아예 없을 때도 NO를 출력한다.