2. naloga
Marsovci
Vsak marsovec se specializira za natanko 5 opravil. Če je za izvedbo naloge treba več kot 5 opravil, se povežejo v skupine. Imamo skupino m marsovcev in za vsakega marsovca imamo podatke o tem, katerih 5 opravil zna opravljati. Opravila so predstavljena s celimi števili od 1 do 100. Napiši program, ki za podano skupino marsovcev ugotovi, ali so vsa tista opravila, ki jih opravlja vsaj en marsovec v skupini, približno enako zastopana; natančneje povedano, preveriti moraš, ali se število marsovcev, ki so specializirani za posamezno opravilo, od enega opravila do drugega razlikuje največ za 1. Podatke naj tvoj program prebere s standardnega vhoda ali pa iz datoteke marsovci.txt (karkoli ti je lažje); v prvi vrstici je število marsovcev m, v vsaki od naslednjih m vrstic pa je po 5 števil, ki povedo, katera opravila obvlada posamezni marsovec. Če so vsa opravila približno enako zastopana, naj izpiše da, sicer pa ne.
Primer vhodnih podatkov: |
Pripadajoči izhod: |
|
---|---|---|
4 | da | |
75 12 96 57 28 | ||
96 28 12 75 9 | ||
96 9 57 28 75 | ||
12 57 9 28 75 | ||
Še en primer vhoda: |
Pripadajoči izhod: |
|
4 | ne | |
75 12 96 57 28 | ||
96 28 12 75 9 | ||
96 9 57 28 75 | ||
12 57 96 28 75 |
Komentar: v prvem primeru se vsako opravilo pojavlja pri treh ali štirih marsovcih, zato so približno enakomerno zastopana. V drugem primeru pa se opravilo 9 pojavlja le pri dveh marsovcih, nekatera opravila pa pri štirih, zato niso približno enakomerno zastopana (glede na definicijo iz besedila naloge).