III Olimpiada Informatyczna 1995/96

Zadanie: AGE
Autor: Marcin Kubica
Agenci

Zawody III stopnia  
Plik źródłowy: AGE.??? (np. pas, c, cpp)
Plik wykonywalny: AGE.exe
Plik wejściowy: AGE.in
Plik wyjściowy: AGE.out

 

W kraju działają agenci obcych wywiadów. Zajmują się oni nie tylko wykradaniem tajemnic, ale także nawzajem się szpiegują. Mówimy, że agent A rozpracował agenta B, jeśli A posiada dokumenty wystarczające do aresztowania B.

Niektórzy agenci są przekupni - w zamian za odpowiednią sumę pieniędzy są gotowi oddać wszystkie posiadane dokumenty. Aresztując agenta przechwytujemy wszystkie zgromadzone przez niego dokumenty. Przekupienie odpowiednio wybranych agentów może więc uruchomić łańcuch aresztowań prowadzący do zlikwidowania wszystkich agentów działających w kraju.

Rodzimy kontrwywiad dostarczył nam informacje o tym, jacy obcy agenci działają w kraju, którzy z nich są przekupni i za jaką cenę, a także, którzy agenci rozpracowali których. Liczba agentów n <= 3000; są oni ponumerowani od 1 do n.

Zadanie

Ułóż program, który:

Wejście

Wyjście

Przykłady
Dla pliku AGE.IN:
3
2
1 10
2 100
2
1 3
2 3
 
w pliku AGE.OUT należy zapisać:
TAK
110
 
Dla pliku AGE.IN:
4
2
1 100
4 200
2
1 2
3 4
 
w pliku AGE.OUT należy zapisać:
NIE
3

Twój program powinien szukać pliku AGE.IN w katalogu bieżącym i tworzyć plik AGE.OUT również w bieżącym katalogu. Plik zawierający napisany przez Ciebie program w postaci źródłowej powinien mieć nazwę AGE.???, gdzie zamiast ??? należy wpisać co najwyżej trzyliterowy skrót nazwy użytego języka programowania. Ten sam program w postaci wykonalnej powinien być zapisany w pliku AGE.EXE.