|
||||
| Zadanie: Dwa przyjęciaKról Bajtazar postanowił urządzić dwa wielkie przyjęcia, na które chce zaprosić wszystkich mieszkańców Bajtocji, przy czym każdego na dokładnie jedno z tych przyjęć. Król z własnego doświadczenia wie, że osoba dobrze się bawi na przyjęciu, gdy jest na nim parzysta liczba jej znajomych. Zażądał więc od Ciebie, abyś tak podzielił mieszkańców kraju pomiędzy dwa przyjęcia, żeby jak najwięcej osób miało na swoim przyjęciu parzystą liczbę znajomych. Możliwy jest również taki podział, w którym na jedno z przyjęć nikt nie przyjdzie. Relacja znajomości jest symetryczna, tzn. jeśli osoba A zna osobę B, to osoba B zna osobę A.
ZadanieNapisz program, który:
WejścieW pierwszym wierszu standardowego wejścia zapisana jest jedna liczba całkowita N ( 1 <= N <= 200) -- jest to liczba mieszkańców Bajtocji. Mieszkańcy są ponumerowani od 1 do N. W kolejnych N wierszach znajdują się opisy znajomości kolejnych osób. Na początku i + 1-szego wiersza występuje liczba całkowita li ( 0 <= li <= N - 1) -- liczba znajomych i-tego mieszkańca. Dalej w tym samym wierszu zapisanych jest li parami różnych numerów znajomych mieszkańca i. Zakładamy, że żaden mieszkaniec nie jest swoim własnym znajomym, a zatem znajomości wypisane są dwukrotnie: jeśli A i B się znają, to B występuje na liście znajomych A oraz A na liście znajomych B.
WyjścieW pierwszym wierszu standardowego wejścia Twój program powinien wypisać jedną liczbę całkowitą M -- liczbę osób, które mają przyjść na pierwsze z przyjęć. W drugim wierszu należy wymienić M numerów tych właśnie osób. Pozostałe osoby pójdą na drugie przyjęcie.W tym zadaniu możliwych jest wiele poprawnych wyników -- Twój program powinien wypisać dowolny z nich.
Przykład
Wersja do druku |