Kirjautuminen

Haku

Tehtävät

Kilpailu

Putka Open 2025
1. kierros:
5.9. klo 18 – 7.9. klo 23

Putkaposti: Kielitiedettä

Kirjoittaja: Antti Laaksonen

Kiitokset tehtävästä: Pekka Karjalainen

Kotimaisten kielten tutkimuskeskus eli Kotus on julkaissut hiljattain Internetissä nykysuomen sanalistan, joka sisältää suomen kielen tavallisimmat sanat taivutustietoineen. Nyt on siis vihdoin kaikkien saatavilla kunnollinen suomen kielen sanaluettelo, jolle ohjelmoijan ei ole vaikea keksiä monia kiinnostavia käyttötapoja. Putkapostissa tutkitaan alkajaisiksi anagrammiryhmiä ja sanaketjuja.

Tätä tehtävää (ja muita ohjelmointikokeiluja) varten Ohjelmointiputkassa on saatavilla ohjelmoijalle alkuperäistä tiedostoa helpommin käsiteltävä muunnettu sanalista (350 kt). Tässä sanastossa ovat mukana ainoastaan suomen kielen pienaakkosia sisältävät sanat, minkä lisäksi XML-merkinnät ja taivutustiedot on poistettu sekä merkistöksi on vaihdettu ISO-Latin-1.

Anagrammiryhmä

Anagrammiryhmä on joukko sanoja, jotka ovat toistensa anagrammeja eli niissä on samat kirjaimet. Esimerkiksi sanat antoisa, asiaton, isontaa ja tosiaan muodostavat anagrammiryhmän. Pienempiä anagrammiryhmiä ovat mikrosekunti ja sointumerkki sekä saneluratkaisu ja seurakuntasali.

Sanaketju

Sanaketjun jokaisesta sanasta pääsee seuraavaan yksinkertaisella muunnoksella. Tässä tehtävässä sallittuja muunnoksia ovat kirjaimen lisäys, kirjaimen poisto, kirjaimen muutos ja sanan kääntö ympäri. Sama sana voi esiintyä ketjussa vain kerran. Esimerkiksi sanat sulka, sula, alus, alas ja jalas muodostavat sanaketjun.

Vastausohje

Tehtävänä on etsiä Kotuksen sanastosta kaikki anagrammiryhmät, joissa ryhmän sanamäärän ja yhden sanan pituuden tulo on ainakin 24, sekä mahdollisimman pitkä sanaketju. Vastauksen ensimmäisellä rivillä lukee, kuinka monta anagrammiryhmää siinä on. Tämän jälkeen tulevat kaikki anagrammiryhmät omilla riveillään ja lopuksi pisin sanaketju omalla rivillään.

Vastaus voisi näyttää seuraavalta:

2
antoisa asiaton isontaa tosiaan
mikrosekunti sointumerkki
sulka sula alus alas jalas

Molemmissa anagrammiryhmissä sanamäärän ja sanan pituuden tulo on ainakin 24 (4 * 7 = 28, 2 * 12 = 24). Kuitenkin vastauksessa täytyy olla yhteensä ainakin kaksitoista sanaa, jotta esimerkki ei kelpaa suoraan vastaukseksi.

Vastaukset

37 henkilöllä on tulos. Suluissa oleva luku tarkoittaa vastauksen sanojen yhteismäärää.

jlaire (8070), symbols (8046), VilleP (7948), kluopaja (7558), TapaniS (7553), lukujenVihaaja (7484), Laitinen (7482), FooBat (7437), öppis (7247), Chiman (7134), Ruokauuni (7123), Metabolix (6906), Deewiant (5875), Legu (5869), Grez (5749), tonberry1 (5746), Sisuaski (5652), Konvehti (5647), Jhuunhym (5450), Laakeri (5301), isashkar (5266), malaire (5101), Seriffi (3729), Pekka Karjalainen (1486), Torgo (1258), Juice (1233), Meitzi (1224), qalle (1208), mikaelh (1205), arcatan (1205), Hansen (1205), Jepso (1200), Megant (1198), Kaukainen amatööri (1138), jalski (999), Salama (813), zebraze (13)

Ennätyksen kehitys

Aika Käyttäjä Tulos
22.05.2007 12:30:00 * Chiman 12
22.05.2007 16:00:00 * Deewiant 14
22.05.2007 20:30:00 * Metabolix 1112
22.05.2007 20:50:00 * Metabolix 1200
23.05.2007 08:18:01 * Deewiant 1206
23.05.2007 09:56:01 * Deewiant 1211
23.05.2007 13:13:01 * tonberry1 1244
23.05.2007 14:51:01 * tonberry1 2400
23.05.2007 18:08:01 * tonberry1 2554
23.05.2007 19:46:01 * Deewiant 5687
24.05.2007 00:50:00 * Grez 5747
24.05.2007 01:00:00 * Grez 5749
24.05.2007 22:50:01 * FooBat 5751
25.05.2007 09:45:01 * Deewiant 5798
25.05.2007 22:50:00 * Deewiant 5875
26.05.2007 14:22:01 * FooBat 6608
26.05.2007 22:08:01 * FooBat 6983
27.05.2007 00:04:01 * FooBat 7191
27.05.2007 02:00:00 * FooBat 7205
27.05.2007 02:30:00 * FooBat 7372
27.05.2007 10:00:00 * FooBat 7423
31.05.2007 19:00:01 * FooBat 7437
08.06.2007 10:45:01 * VilleP 7463
09.06.2007 13:00:01 * VilleP 7925
10.06.2007 15:15:01 * VilleP 7937
11.06.2007 17:30:01 * VilleP 7941
12.06.2007 19:45:01 * VilleP 7948
01.11.2013 23:47:05 jlaire 7949
24.08.2015 16:03:49 jlaire 7950
24.08.2015 16:29:56 jlaire 7951
26.08.2015 17:02:01 jlaire 7952
28.08.2015 17:30:56 jlaire 7953
29.08.2015 12:06:41 jlaire 7954
29.08.2015 12:21:29 jlaire 7955
29.08.2015 21:26:43 jlaire 7956
29.08.2015 22:48:13 jlaire 7957
31.08.2015 14:47:21 jlaire 7958
01.09.2015 19:07:14 jlaire 7968
06.09.2015 23:10:45 jlaire 7970
10.09.2015 23:04:51 jlaire 7971
03.10.2015 14:50:36 jlaire 7972
05.10.2015 17:54:04 jlaire 7973
10.10.2015 14:33:55 jlaire 7974
27.10.2015 15:50:23 jlaire 7975
16.11.2015 23:03:05 jlaire 7976
30.12.2015 11:52:42 jlaire 7977
15.01.2016 22:10:56 jlaire 7978
28.01.2016 12:54:20 jlaire 7979
15.02.2016 10:43:21 jlaire 7980
12.04.2016 05:13:41 jlaire 7999
12.04.2016 05:13:57 jlaire 8000
22.12.2017 22:22:30 symbols 8046
25.08.2024 00:47:39 jlaire 8047
25.08.2024 01:23:48 jlaire 8050
01.09.2024 17:51:12 jlaire 8051
09.09.2024 21:35:40 jlaire 8052
10.09.2024 13:04:46 jlaire 8053
11.09.2024 14:08:32 jlaire 8054
13.09.2024 23:56:08 jlaire 8055
15.09.2024 21:02:39 jlaire 8056
20.09.2024 19:29:47 jlaire 8057
25.09.2024 10:51:55 jlaire 8058
03.10.2024 22:13:34 jlaire 8059
11.10.2024 03:38:13 jlaire 8060
23.10.2024 03:03:14 jlaire 8062
03.11.2024 04:36:56 jlaire 8063
17.11.2024 20:47:18 jlaire 8064
28.11.2024 14:17:42 jlaire 8065
07.12.2024 18:20:27 jlaire 8066
18.12.2024 17:13:59 jlaire 8067
02.02.2025 15:33:13 jlaire 8068
18.02.2025 16:05:32 jlaire 8069
01.03.2025 00:00:01 jlaire 8070

*) Ajat ennen 27.12.2010 ovat arvioita, koska tarkkaa aikaa ei ole tallennettu.

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

Keskustelu

Katso myös Putkaposti 15: Kielitiedettä.

Tietoa sivustosta