Återuppfinnande av matematiken

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

문제

Ånej, all matematik har gått upp i rök! Hur gick det här till? Du hinner inte fundera över saken, utan inser att du måste återuppfinna så mycket matematik som möjligt innan världen går under! Även om all faktisk kunskap försvunnit så vet du lite om matematiken. Matematiken är uppbyggd av NN satser. Varje sats, ii, beror på ett antal satser a_i_1,a_i_2,,a_i_k<ia\_{i\_1}, a\_{i\_2}, \cdots, a\_{i\_k} < i, som måste bevisas innan man kan börja med satsen. För att visa sats ii måste du spendera t_it\_i tid. Värdet av en visad sats är v_iv\_i.

Du har TT tid på dig. Välj vilka satser du ska bevisa för att maximera det totala värdet av matematiken du hinner återuppfinna.

입력

Den första raden innehåller ett heltal CC (0C100 \leq C \leq 10), numret på testfallet (00 är exempelfallet nedan).

Den andra raden innehåller två heltal: NN (1N1051 \le N \le 10^5) och TT (1T1071 \le T \le 10^7)

Därefter följer NN beskrivningar av satser. En beskrivning av en sats består av två rader. Först kommer en rad med tre heltal: 0t_i1040 \le t\_i \le 10^4, 0v_i1040 \le v\_i \le 10^4, 0k_iN0 \le k\_i \le N. Därefter kommer en rad med k_ik\_i heltal: a_i_1,a_i_2,,a_i_k<ia\_{i\_1}, a\_{i\_2}, \cdots, a\_{i\_k} < i -- indexen på satserna som måste bevisas innan den här satsen. Satserna är indexerade från 0 i ordningen de kommer i input.

출력

Skriv först ut en rad med ett tal SS (0SN0 \le S \le N), antal satser du ska bevisa. Skriv därefter ut en rad med SS heltal, satserna du bevisar i ordning du bevisar dem.