Kirjautuminen

Haku

Tehtävät

Kilpailu

Murra koodi!
Lue ja osallistu!
Seuraava vihje 29.1.
Voittajia 1 + yrittäjiä 1

Putkaposti: Vokaalisaaret

Kirjoittaja: Antti Laaksonen

Keskellä valtamerta sijaitsee merkillinen saariryhmä Vokaalisaaret. Eri saarten asukkaat puhuvat eri kieliä, mutta kaikkien kielien sanat muodostuvat vokaaleista. Jokaisella kielellä on lisäksi oma kantasana, josta kaikki kielen sanat voidaan johtaa. Tehtävänä on selvittää kantasanan perusteella kunkin kielen eri sanojen määrä ja lyhin vokaaleista muodostettu sana, jota kielessä ei esiinny.

Tehtävä

Kaikki sanat muodostuvat vokaaleista A, E, I, O, U ja Y. Kaikki tietyn kielen sanat voidaan muodostaa poistamalla kantasanasta kirjaimia. Esimerkiksi jos kantasana on YOA, sanat ovat A, O, OA, Y, YA, YO ja YOA. Jos taas kantasana on AOOE, sanat ovat A, AE, AO, AOE, AOO, AOOE, E, O, OE, OO ja OOE. Kantasanan kirjainten järjestystä ei siis saa muuttaa, siitä saa vain poistaa kirjaimia.

Kantasana YOA tuottaa 7 eri sanaa ja kantasana AOOE 11 eri sanaa. Kun kantasanan pituus kasvaa, sanojen määrä kasvaa nopeasti. Esimerkiksi kantasana UAYEEIUU tuottaa 141 eri sanaa, kantasana OAEYUIEEOAOYEIUU tuottaa 29751 eri sanaa ja kantasana AAAOOIUEOIUEEOIUOEEEEAAOIU tuottaa 3075223 eri sanaa.

Jos kantasanassa ei esiinny kaikkia vokaaleita, lyhin kieleen kuulumaton sana on vain yhden kirjaimen pituinen. Esimerkiksi sana U ei kuulu kieleen, jonka kantasana on YOA tai AOOE. Usein lyhin sana on kuitenkin pidempi: kantasanan ollessa OAEYUIEEOAOYEIUU lyhin sana on kolmen kirjaimen pituinen, esimerkiksi UAA tai UYO.

Eri saarten kielien kantasanat ovat tiedostossa voksaa.zip (420 kt). Arvostelussa sanojen määrästä saa n pistettä ja lyhimmästä sanasta n - m pistettä, kun n on kantasanan pituus ja m on lyhimmän sanan pituus. Mitä lyhyemmän sanan löytää, sitä enemmän pisteitä siis saa.

Vastausohje

Jokaiselle riville tulee kantasanan pituus, ilmoitettava tieto (M = määrä, L = lyhin sana) ja sanojen määrä tai lyhin kieleen kuulumaton sana. Jokaisen tehtävään kuuluvan kantasanan pituus on eri. Jos sanojen määrässä on yli kahdeksan numeroa, luvun kahdeksan viimeisen numeron ilmoitus riittää. Jos lyhimpiä kieleen kuulumattomia sanoja on useita, niistä voi ilmoittaa minkä tahansa.

Vastaus voisi näyttää seuraavalta:

3 M 7
3 L U
16 M 29751
16 L UAA

Tästä vastauksesta saisi 34 pistettä (3 + 2 + 16 + 13). Kuitenkaan testitapauksissa ei ole tämänpituisia kantasanoja.

Vastaukset

30 henkilöllä on tulos. Suluissa oleva luku tarkoittaa saavutettua pistemäärää.

Metabolix (2269067), FooBat (2269067), os (2269067), Grez (2269067), Chiman (2269067), Pekka Karjalainen (2269067), VilleP (2269067), jlaire (2269067), Sisuaski (2269067), Konvehti (2269067), lukujenVihaaja (2269067), Torgo (2269067), Laitinen (2269067), L2-K2 (2269067), Jhuunhym (2269067), Laakeri (2269067), TapaniS (2269067), öppis (2269067), symbols (2269067), membolic (2269067), Ruokauuni (2269067), Seriffi (1094629), tonberry1 (1094612), Pöytälamppu (1094598), setä (1094598), qalle (32), tkok (28), Touho (7), TsaTsaTsaa (7), Salama (4)

Kirjaudu sisään Ohjelmointiputkaan, niin voit lähettää vastauksen tehtävään.

Keskustelu

Katso myös Putkaposti 14: Vokaalisaaret.

Tietoa sivustosta