선분의 합집합
시간 제한1초메모리 제한1024 MB
가격과 길이가 정해진 선분 N개가 주어집니다. 가격 합이 A인 부분집합 중 합집합 길이가 정확히 B가 되는 것이 있는지 Q개의 질의마다 판별합니다.
문제
개의 선분이 주어진다. 번째 선분의 가격은 이고, 길이는 이다.
개의 쿼리가 주어진다. 각 쿼리마다 다음 조건을 만족하는 선분 집합을 고를 수 있는지 판별하라.
- 가격의 합이 정확히 가 되도록 선분 집합을 고른다. 고른 선분들을 일차원 수직선 위에 배치하는데, 선분끼리 겹쳐도 된다. 이때 선분의 합집합의 길이가 정확히 가 되도록 할 수 있는가?
입력
첫째 줄에 두 정수 과 가 공백으로 구분되어 주어진다. (; )
다음 개의 줄에 두 정수 와 가 공백으로 구분되어 주어진다. (; )
다음 개의 줄에 두 정수 와 가 공백으로 구분되어 주어진다. (; )
출력
각 쿼리에 대해 조건을 만족하는 선분 집합을 고를 수 있다면 YES, 그렇지 않다면 NO를 쿼리가 주어진 순서대로 한 줄에 하나씩 출력한다.