줄 세우기
시간 제한1초메모리 제한1024 MB
여러 줄을 끝과 끝으로 합치고, 같은 줄에 있는 두 사람 사이 구간의 번호 합을 구하는 질의를 처리한다.
문제
사람들이 일렬로 서 있는 개의 줄이 있다. 다음 두 가지의 질의가 주어진다.
-
1 a b: 와 가 같은 줄에 있다면NO를 출력한다. 그렇지 않다면YES를 출력하고 가 속한 줄과 가 속한 줄을 연결한다.- 가 속한 줄의 마지막에 서 있는 사람과 가 속한 줄의 첫 번째 사람을 순서대로 연결한다.
- 줄을 합칠 때 기존의 줄의 순서는 유지한다.
-
2 a b: 와 가 같은 줄에 있다면 와 사이에 있는 사람들의 번호의 합을 출력한다. 그렇지 않다면-1을 출력한다.- 와 도 포함해서 계산한다.
위 질의를 해결하는 프로그램을 작성하자.
입력
첫째 줄에 사람들이 일렬로 서 있는 줄의 개수 이 주어진다.
둘째 줄부터 개의 줄에 걸쳐 사람들이 일렬로 서 있는 각 줄의 정보가 주어진다. 각 줄의 처음에는 줄에 속한 사람의 수 가 주어진다. 그다음에 각 줄에 속하는 사람의 번호 가 개만큼 공백으로 구분되어 주어진다.
이거나 이면 이다. 즉, 모든 사람의 번호는 서로 다르다.
번째 줄에는 질의의 개수 가 주어진다.
번째 줄부터 개의 줄에 걸쳐 질의가 차례대로 주어진다.
입력으로 주어지는 모든 수는 정수이다.
출력
질의에 대한 답을 각 줄마다 차례로 출력한다.