- 問題文
- 言語
- Soundex
- 問題形式
- 🔀対応付け
- 難易度
- ★★★★☆
IOL2015-3 の攻略
ヒント 1
「名前を符号化(コーディング)するためのアルゴリズム」であって、「名前の発音を符号化するためのアルゴリズム」ではないことに注意。あくまで名前の文字列を処理するもので、名前の発音を変換するものではない。
ヒント 1-1
頭文字がそのまま書かれることはすぐわかる。
数字は、似た音をまとめて番号を付けていることは想像にかたくない。
ヒント 1-2
英語の母音の文字は実際の発音と対応しないことが多く、「似たような音を持つ名前の検索を容易にする」という目的ではあまり使えない。
ヒント 1-3
数字は 0 ~ 6 で、子音の数より明らかに少ない。
つまり、音の似ている子音をグルーピングせよという問題。
ヒント 2
Wilson が W425 であることから、4 と 2 と 5 の子音にあたりがつく。
答え
- 4 は
l系の子音。 - 2 は
s系の子音。 - 5 は
n系の子音。
ヒント 3
Stanmore と Stubbs の符号を考える。
ヒント 3-1
S312 と S356 のどちらか。
ヒント 3-2
共通の先頭の 3 は何を表すと考えられるか。また、1 にもあたりがつく。
答え
- 3 は
t系の子音。 - 1 は
b系の子音。
ヒント 4
A536 、A251 、A400 に対応するのはどれか。
ヒント 4-1
A で始まる名前に t を含むものはないので、似た音を考える必要がある。
ヒント 4-2
Anderson の d 、または Ashcombe の c が t に似ている。どちらと考えるべきか。
ヒント 4-3
A251 は 1(b 系の子音)を持つ。
答え
Anderson が A536 、Ashcombe が A251 。
- 3 は
dを含む。 - 6 は
r系の子音。
ヒント 5
T520 に対応する名前を考える。
ヒント 5-1
Tonks と思われる。
0 は何を意味する?
ヒント 5-2
0 は「対応する子音がない」ことを表す。
そのうえで、Allaway が A400 であることを考える。ここから何が言える?
答え
w や y は子音として無視される。
以上でおおよそ解けるはず。完全回答を目指すなら、アルゴリズムを正確に解明するまで頑張る必要がある。詳細略。