꺾은선 모양 찾기

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

xy 평면 위에 여러 개의 꺾은선이 주어진다. 꺾은선들의 목록과 하나의 기준 꺾은선(템플릿)이 주어질 때, 목록에 있는 꺾은선들 중에서 템플릿과 같은 모양인 것을 모두 찾아라.

꺾은선은 x축 또는 y축에 평행한 여러 개의 선분으로 이루어진다. 꺾은선은 시작점에서 끝점까지 순서대로 나열된 꼭짓점들의 좌표로 정의되며, 중간의 각 꼭짓점에서 정확히 90도로 꺾인다. 하나의 꺾은선은 같은 점을 두 번 지나지 않는다.

두 꺾은선은 확대·축소나 뒤집기(반사) 없이 평면 위에서의 회전과 평행이동만으로 서로 완전히 겹칠 수 있을 때 같은 모양이라고 한다. 꺾은선의 꼭짓점을 끝점에서 시작점 방향으로 거꾸로 나열한 것은 원래의 꺾은선과 같은 것으로 본다.

템플릿과 같은 모양인 꺾은선들을 모두 찾는 프로그램을 작성하라.

입력

입력은 여러 개의 데이터셋으로 이루어진다. 0 하나만 있는 줄은 입력의 끝을 나타낸다.

각 데이터셋의 형식은 다음과 같다.

n
꺾은선 0
꺾은선 1
꺾은선 2
...
꺾은선 n

$n$은 탐색 대상 꺾은선의 개수이며, $1 \le n \le 50$인 정수이다. 꺾은선 0은 템플릿이고, 나머지 꺾은선에는 $1$부터 $n$까지의 번호가 붙는다.

각 꺾은선은 다음 형식으로 주어진다.

m
x1 y1
x2 y2
...
xm ym

$m$은 꺾은선의 꼭짓점 개수이다($3 \le m \le 10$). 공백으로 구분된 $x_i$와 $y_i$는 $i$번째 꼭짓점의 x좌표와 y좌표이다($-10000 < x_i < 10000$, $-10000 < y_i < 10000$).

출력

각 데이터셋마다, 템플릿과 같은 모양인 꺾은선의 번호($1$부터 $n$까지)를 오름차순으로 한 줄에 하나씩, 앞뒤 공백 없이 출력한다.

각 데이터셋의 번호 출력이 끝나면 +를 정확히 다섯 개 이어 붙인 줄(+++++)을 출력한다.