높이가 같은 볼록 타일 14개 이하가 주어질 때, 잘린 모서리를 고려해 겹치지 않게 나란히 배치했을 때 필요한 프레임의 최소 너비를 구한다.
어려움9동적 계획법기하그리디완전 탐색아직 제출이 없습니다시간 제한1초메모리 제한1024 MB높이가 모두 H로 같은 직사각형 돌 타일이 있다. 각 타일은 원래의 네 모서리를 서로 다른 방식으로 잘라 냈지만, 다음 두 성질은 그대로 남아 있다.
아래 그림은 타일 두 개를 자르기 전과 자른 뒤의 모습이다. 꼭짓점은 작은 원으로 표시했다.

타일을 모두 운반하려면 높이가 H인 틀에 겹치지 않게 나란히 놓아야 한다. 타일은 평행이동만 할 수 있고, 회전하거나 뒤집을 수는 없다. 볼록한 모양이 서로 많이 다르므로 틀을 따라 놓는 순서에 따라 필요한 폭이 달라진다. 다음 그림은 앞 그림의 두 타일을 놓는 두 가지 순서다. 두 번째 순서가 틀의 폭을 더 줄인다.

타일의 정보가 주어지면, 모든 타일을 겹치지 않게 나란히 담는 높이 H짜리 틀의 최소 폭을 구하라.
첫 줄에 타일의 개수 N (1≤N≤14)이 주어진다. 이어서 타일 하나를 설명하는 줄 묶음이 N개 주어지며, 모든 타일의 높이는 같다.
각 묶음의 첫 줄에는 타일의 꼭짓점 개수 K (4≤K≤104)가 주어진다. 이어지는 K개의 줄에는 꼭짓점 하나의 좌표를 나타내는 두 정수 X (−108≤X≤108)와 Y (0≤Y≤108)가 주어진다. 꼭짓점은 반시계 방향으로 주어진다. 첫 번째 꼭짓점은 (0,0)이고 두 번째 꼭짓점은 X>0인 (X,0) 꼴이며, 이 변이 타일의 아랫변이다. 타일은 아랫변과 평행한 윗변이 있는 단순 볼록 다각형이다.
모든 타일을 겹치지 않게 나란히 담는, 타일과 높이가 같은 틀의 최소 폭을 한 줄에 출력한다. 소수점 아래 정확히 세 자리까지 출력하고, 필요하면 반올림한다.