Experiment v povodí řeky
Zadání
Skupina ekologů studuje povodí velké řeky a připravuje experiment. Mají k dispozici tři speciální tekutiny. Pro každou z nich potřebují vybrat pramen, do kterého tekutinu nalijí, aby následně mohli po dobu 24 hodin měřit koncentraci tekutin v různých částech povodí, takzvaných sekcích. Sekce je úsek řeky mezi dvěma kontrolními body. Kontrolním bodem je každý pramen, každý soutok dvou řek a také místo, kde se hlavní řeka vlévá do moře. Kromě toho jsou definovány další kontrolní body na významných místech podél některých řek. Vzhledem k tomu, že v povodí nedochází k soutoku tří a více řek, mají kontrolní body a sekce strukturu binárního stromu, jak je vidět na Obrázku 1. Jak ilustruje obrázek 1a), v místě, kde se hlavní řeka vlévá do moře, může docházet k soutoku s jinou řekou, která je také součástí povodí hlavní řeky.
Výběr pramenů komplikuje ekologům fakt, že měření v dané sekci je validní pouze tehdy, když během celého experimentu nedojde v sekci k promíchání dvou nebo tří tekutin. Ekologové přirozeně chtějí uskutečnit co nejvíce validních měření, z toho důvodu se jako dobrá myšlenka jeví nalít tekutiny do takových pramenů, kdy je maximalizován počet sekcí, kterými protéká právě jedna tekutina.
Úloha
Je dán seznam dvojic kontrolních bodů tvořících sekce. Vaším úkolem je určit maximální možný počet sekcí, kterými během experimentu protéká právě jedna tekutina, když jsou všechny tři tekutiny nality do pramenů.
Vstup
První řádek obsahuje celé nezáporné číslo N udávající počet sekcí. Následuje N řádků, kde každý reprezentuje jednu sekci pomocí čísel C a D oddělených mezerou. Tato čísla jsou identifikátory kontrolních bodů vymezujících danou sekci. Kontrolní bod C je ten blíže k pramenu řeky. Kontrolní body jsou indexovány od 0 do N, přičemž 0 je vždy identifikátor kontrolního bodu umístěného v ústí hlavní řeky do moře. Sekce jsou na vstupu reprezentovány v náhodném pořadí. Hodnota N nepřesáhne 1,5 × 106. Je garantována existence alespoň třech pramenů.