만드는 중입니다

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

기계 가게

면접 대비

시간 제한1초메모리 제한1024 MB

요약
기계 K를 직접 사는 비용과 부품 기계들로 조립하는 비용 중 가장 낮은 값을 구합니다.
난이도

보통10점 중 4점

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

문제

Elise Isabella Oya는 Cute Machine Shop에서 일한다. 이 가게는 여러 종류의 기계를 판매하며, 모든 기계는 공급업체에서 살 수 있다. 일부 기계는 가게에서 다른 기계들로 만들 수도 있고, 그 기계들 역시 또 다른 기계로 만들어질 수 있다.

예를 들어 기계 A는 기계 B와 C로 만들 수 있고, 기계 B는 기계 D와 E로 만들 수 있다. 이 경우 기계 A는 C, D, E로도 만들 수 있다.

Elise는 어떤 기계의 가격 견적을 요청받았다. 이에 답하려면 그 기계를 사서 얻든 직접 만들어 얻든, 가장 낮은 비용을 알아야 한다. 다른 기계로 기계를 만드는 데 드는 인건비는 무시해도 된다.

입력

첫 줄에는 공백으로 구분된 정수 NN과 KK가 주어진다(1≤K≤N≤10001 \le K \le N \le 1000). NN은 서로 다른 기계의 개수이고, KK는 Elise가 얻어야 하는 기계의 번호이다. 기계는 1,…,N1, \ldots, N으로 번호가 매겨져 있다.

다음 NN개의 줄은 번호 순서대로 기계를 설명한다. 각 줄의 첫 값은 기계 ii를 사는 비용 PiP_i(0≤Pi≤100000 \le P_i \le 10000)이다. 기계를 사는 방법으로만 얻을 수 있으면 가격 뒤에 0이 오고, 그 줄에는 더 이상 데이터가 없다. 그렇지 않으면 가격 뒤에 기계 ii를 만드는 데 필요한 다른 기계의 개수 MiM_i(1≤Mi≤N1 \le M_i \le N)가 오고, 이어서 그 기계들의 번호 MiM_i개가 공백으로 구분되어 주어진다. 이 MiM_i개의 번호는 항상 서로 다르다.

어떤 기계도 직접적으로든 간접적으로든 자기 자신의 구성 요소가 되지 않는다. 그래프 용어로 말하면 방향 비순환 그래프이다.

출력

기계 KK를 얻는 데 드는 최소 비용을 나타내는 정수 하나를 출력한다.

예제2

  1. 예제 1

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

    입력
    5 1
    50 3 2 3 4
    30 2 4 5
    20 2 4 5
    5 1 5
    10 0
    
    예상 출력
    35