- Time limit: 4.00 s
- Memory limit: 128 MB
Käännöstoimisto on aloittanut toimintansa, mutta sen palveluksessa ei ole vielä yhtään kääntäjää. Sinulle on annettu tiedot, mistä kielistä mihin kieliin toimiston täytyy pystyä tekemään käännöksiä.
Jokainen palkattava kääntäjä pystyy tekemään käännöksiä vieraasta kielestä äidinkieleensä. Tarvittaessa käännös voidaan tehdä myös useamman kääntäjän yhteistyönä. Esimerkiksi jos A kääntää suomesta saksaan ja B kääntää saksasta ranskaan, niin A ja B pystyvät kääntämään yhdessä suomesta ranskaan.
Mikä on pienin määrä kääntäjiä, joiden avulla kaikki käännökset pystytään tekemään? Voit olettaa, että mille tahansa kieliparille voidaan palkata kääntäjä.
Syöte
Syötteen ensimmäisellä rivillä on kaksi kokonaislukua ja : kielten määrä ja vaatimusten määrä. Kielet on numeroitu .
Tämän jälkeen syötteessä on riviä, joista jokainen sisältää kaksi kokonaislukua ja . Tämä tarkoittaa, että toimiston täytyy pystyä tekemään käännös kielestä kieleen . Sama vaatimus ei esiinny monta kertaa.
Tuloste
Ohjelmasi tulee tulostaa yksi kokonaisluku: montako kääntäjää täytyy palkata.
Rajat
Esimerkki
Syöte:
4 5 1 2 2 3 2 4 3 1 3 4
Tuloste:
4
Selitys: Yksi ratkaisu on palkata kääntäjät kielille 1->2, 2->3, 3->1 sekä 2->4. Tällöin myös käännös 3->4 onnistuu seuraavasti: 3->1->2->4.