Sidevõrk
문제
[이미지 1]Sidevõrk koosneb serverist, mis on nummerdatud , ja neid ühendavast kaablist. Võrk on sidus: igast serverist on võimalik andmeid edastada igasse teise serverisse. Kui mõni server rikki läheb, siis tema kaudu andmeid edastada ei saa, ja see võib põhjustada häireid ka teiste serverite vahelises sides. Sidefirma tahab hinnata, millised võivad olla tagajärjed, kui rikki läheb korraga kaks serverit.
Kui serverite rikkega jaguneb võrk osaks, milles on vastavalt , , , serverit, siis on sellise võrgu sidususkoefitsient . Näiteks kui kõrvaloleval joonisel kujutatud võrgus lähevad rikki serverid 1 ja 5, jaguneb võrk osaks, kus ühes osas on serverit (2 ja 4), teises osas serverit (3, 6, 11, 12 ja 8) ning kolmandas osas serverit (7, 9 ja 10). Selliselt jagunenud võrgu sidususkoefitsient on seega .
Kirjutada programm, mis leiab suurima ja vähima võimaliku sidususkoefitsiendi, kui antud võrgus lähevad rikki täpselt kaks serverit.
입력
Sisendi esimesel real on täisarv (). korral peab programm leidma maksimaalse, korral aga minimaalse võimaliku sidususkoefitsiendi.
Sisendi teisel real on serverite arv ().
Järgmisel real on igaühel kaks täisarvu ja (, ), mis näitavad, et kaabel ühendab servereid ja .
출력
Väljastada üks täisarv, vastavalt väärtusele sidususkoefitsiendi maksimum või miinumum.
예제
예제 1
2 12 1 2 1 3 2 4 2 5 3 6 3 11 5 7 6 12 6 8 7 9 7 10
28
예제 2
1 4 1 2 2 3 3 4
4