교집합 만들기
면접 대비시간 제한2초메모리 제한1024 MB
N개의 구간과 Q개의 질의 [l, r]이 주어질 때, 교집합이 정확히 [l, r]이 되도록 고르는 구간의 최소 개수를 구하고, 불가능하면 -1을 출력합니다.
문제
구간 은 이상 이하인 모든 실수로 이루어진 집합이다.
구간 개가 주어진다. 다음 질의 개를 해결하는 프로그램을 작성하시오.
- 주어진 , 에 대해, 구간을 개 이상 선택하여 교집합이 정확히 이 되도록 할 수 있는가? 가능하다면, 선택해야 하는 구간의 최소 개수는 몇 개인가?
입력
첫 번째 줄에 구간의 개수 이 주어진다. ()
다음 개의 줄에는 한 줄에 하나씩 구간 를 나타내는 정수 와 가 공백으로 구분되어 주어진다. ()
다음 줄에는 질의의 개수 가 주어진다. ()
다음 개의 줄에는 한 줄에 하나씩 질의의 두 정수 과 이 공백으로 구분되어 주어진다. ()
출력
각 질의마다 한 줄에 하나씩 출력한다. 교집합이 정확히 이 되도록 구간을 선택할 수 없으면 을, 가능하면 선택해야 하는 구간의 최소 개수를 출력한다.