만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

폭발하는 배선

시간 제한2초메모리 제한512 MB

요약
각 전선이 고른 전선 중 정확히 하나와만 닿도록 전선을 고르고, 고른 전선 유용도의 합이 최대가 되는 값을 구합니다.
난이도

보통10점 중 7점

유형
기하, 그래프, 동적 계획법
정답자
아직 제출이 없습니다

문제

칩에 새로운 종류의 배선을 설계하고 있다고 하자. 안타깝게도 이 배선은 잘못된 조건에서 폭발하는 특이한 재료로 만들어져 있다. 칩에 설치할 수 있는 배선들의 집합이 주어지고, 각 배선에는 유용성 값이 있다.

칩이 x축 위에 놓여 있다고 가정해도 된다. 각 배선은 x축 위의 서로 다른 두 점을 잇고, 이 두 점을 연결하는 2차원 폴리라인으로 표현된다. 폴리라인은 직선 선분으로 이어진 점들의 열이다. 모든 배선은 칩과 닿는 첫 점과 마지막 점을 제외하면 x축 위쪽에 있다. 또한 각 배선 폴리라인의 모든 x좌표는 그 폴리라인의 첫 점과 마지막 점이 이루는 x축 구간 안에 있다.

두 배선의 폴리라인이 한 점 이상에서 닿거나 교차하면 두 배선은 간섭한다. 배선은 자기 자신과 간섭하지 않는다. 배선 집합에서 모든 배선이 집합 안의 다른 배선과 정확히 하나씩 간섭하면 그 집합은 안전하다. 집합의 효용은 포함된 배선 유용성 값의 합이다. 주어진 배선들 중에서 고를 때, 안전한 부분집합 가운데 효용의 최댓값을 구하라.

입력

첫 줄에 배선의 개수 NN (1 ≤ NN ≤ 150)이 주어진다.

이어지는 NN개의 줄은 각각 배선 하나를 설명한다. 각 줄은 배선의 유용성 kk (0 ≤ kk ≤ 100 000)와 폴리라인의 점 개수 pp (3 ≤ pp ≤ 10)의 두 정수로 시작한다. 그 뒤에 pp쌍의 정수 x1,y1,x2,y2,…,xp,ypx_1, y_1, x_2, y_2, \ldots, x_p, y_p (0 ≤ xix_i, yiy_i ≤ 100 000)가 주어지며, 이것이 폴리라인 (x1,y1)(x_1, y_1)-(x2,y2)(x_2, y_2)-...-(xp,yp)(x_p, y_p)를 정의한다.

x1<xpx_1 < x_p이고 2≤i<p2 ≤ i < p에 대해 x1≤xi≤xpx_1 ≤ x_i ≤ x_p가 보장된다. 또 y1=yp=0y_1 = y_p = 0이고 2≤i<p2 ≤ i < p에 대해 yi>0y_i > 0이다. 입력의 모든 점은 서로 다르다.

출력

주어진 배선들의 안전한 부분집합 가운데 효용의 최댓값을 출력한다.

예제3

  1. 예제 1

    입력
    1
    1 3 0 0 1 1 2 0
    
    예상 출력
    0
    
  2. 예제 2

    입력
    5
    1 3 0 0 50 50 100 0
    1 3 45 0 50 40 110 0
    1 3 10 0 20 10 30 0
    1 3 20 0 30 10 40 0
    1 3 35 0 45 10 50 0
    
    예상 출력
    4
    
  3. 예제 3

    입력
    5
    1 3 0 0 50 50 100 0
    1 3 45 0 50 40 110 0
    1 3 10 0 20 10 30 0
    1 3 20 0 30 10 40 0
    10 3 35 0 45 10 50 0
    
    예상 출력
    11