Sparing w Programowaniu Zespołowym UAM & PP, 6.11.2004 |
Zadanie J - Szkatułki |
Pan Kowalski ma pewną ilość szkatułek, w których poukrywane są monety i czasem klucze do innych szkatułek. Na początku dysponuje kluczami do pewnych szkatułek, które jest w stanie otworzyć. Otwierając te szkatułki może zdobyć kolejne klucze i otworzyć następne szkatułki. Interesuje go ile monet może wyjąć ze szkatułek zgodnie z przyjętymi zasadami.
W pierwszej linii znajduje się pojedyncza liczba D oznaczająca liczbę zestawów testowych. W pierwszym wierszu każdego zestawu mamy jedną liczbę całkowitą N (1 ≤ N ≤ 1000) oznaczająca liczbę szkatułek, które posiada Pan Kowalski. W drugiej linii znajdują się liczby naturalne oddzielone spacjami. Pierwsza liczba w linii K (0 ≤ K ≤ N)oznacza ilość kluczy jaką na początku dysponuje Pan Kowalski, a następnie K liczb z numerami szkatułek do których posiada klucze na początku. W kolejnych N liniach znajdują sie liczby naturalne oddzielone spacjami. W każdym wierszu znajduje się opis pojedynczej szkatułki. Pierwsza liczba w wierszu Mi (0 ≤ Mi1000) oznacza liczbę monet ukrytych w i-tej szkatułce, następnie znajduje się liczba Ki (0 ≤ Ki ≤ N)oznaczająca liczbę kluczy które znajdują sie w i-tej szkatułce a następnie Ki liczb z numerami szkatułek do których ukryte są klucze w danej szkatułce.
Dla każdego zestawu danych należy wypisać w osobnej linii jedną liczbę oznaczająca liczbę monet, które zgodnie z warunkami zadaniami Pan Kowalski może wyjąć ze szkatułek, które posiada.
Wejście2 3 1 3 1 0 0 1 1 0 1 2 3 1 1 1 1 2 1 1 3 1 1 1 |
Wyjście1 3 |