Bu zorluk Aalto Üniversitesi'nde aldığım bir programlama kursuna dayanıyor ve test vakalarını içeriyor . Materyal izin alınarak kullanılır.
İki buçuk yıl önce İngilizcede kaşıkçılık konusunda bir zorluk vardı . Bununla birlikte, Finlandiya'da kaşıkçılık çok daha karmaşıktır.
Kaşıkçılık Fince
Fince, ünlüler aeiouyäö
ve ünsüzler bcdfghjklmnpqrstvwxz
. ( å
teknik olarak Fince'nin bir parçasıdır, ancak burada dikkate alınmaz.)
En temel kaşıkçılık sadece her kelimenin ilk sesli harfini ve onlardan önce gelen ünsüzleri alır ve parçaları değiştirir:
henri kontinen -> konri hentinen
tarja halonen -> harja talonen
frakki kontti -> kokki frantti
ovi kello -> kevi ollo
Uzun sesli harfler
Bazı kelimeler aynı ardışık sesli harflerden ikisini içerir. Bu durumlarda, sesli harf çifti, uzunluğu aynı tutmak için diğer kelimenin ilk sesli harfiyle, kısaltılmış veya uzatılmış sesli harflerle değiştirilmelidir.
haamu kontti -> koomu hantti
kisko kaappi -> kasko kiippi
İki farklı ardışık sesli harf için bu geçerli değildir:
hauva kontti -> kouva hantti
puoskari kontti -> kooskari puntti
Üç veya daha fazla aynı ardışık harfin olacak değil girişine görünür.
Sesli harf uyumu
Fince'nin sesli harf uyumu denen güzel bir şeyi vardır . Temel olarak, arka sesli aou
ve ön sesli harflerin äöy
aynı kelimede görünmemesi gerektiği anlamına gelir .
Bir kelimenin içine ön ya da arka ünlüleri takas zaman kelimenin geri kalan diğer türden tüm ünlüler kelimenin yeni bir başlangıcı eşleşecek şekilde değiştirilmelidir ( a <-> ä
, o <-> ö
, u <-> y
):
köyhä kontti -> kouha köntti
hauva läähättää -> läyvä haahattaa
e
ve i
nötr ve tüm diğer harfler ile görünebilir; bunları bir kelimeye dönüştürmek, kelimenin geri kalanında değişikliklere neden olmamalıdır .
Özel durumlar
Sesli harf uyumu, birçok kredi kelimesi ve bileşik sözcükler de dahil olmak üzere bazı kelimeler için geçerli değildir. Bu vakaların "doğru" ele alınmasına gerek yoktur.
Meydan okuma
İki kelime verildiğinde, kelimesi kelimesine çıktı.
Giriş kelimeler yalnızca karakter olacak a-z
ve äö
. Büyük veya küçük harf kullanmayı seçebilirsiniz, ancak seçiminiz hem kelimeler hem de giriş / çıkış arasında tutarlı olmalıdır.
G / Ç herhangi bir uygun formatta yapılabilir . (Kelimeler dizeler veya karakter dizileri olarak düşünülmelidir.)
Bu kod golf , bu nedenle bayttaki en kısa çözüm kazanır.
Test senaryoları
U+0308 COMBINING DIAERESIS
U+00E4 LATIN SMALL LETTER A WITH DIAERESIS
e
ve i
, nötr olan fihus keksy
, huvu lehy
ve lesmä prihti
kabul edilebilir cevaplar kehys fiksu
, levy huhu
ve prisma lehti
sırası ile?