これがあなたのワードスミスの皆さんのためのものです!単語のリストを取得し、各単語のすべての可能な連結分解のリストを生成するプログラムまたは関数を作成します。例えば:
(注:これは、説明のための小さなサンプリングにすぎません。実際の出力ははるかに大きくなります。)
afterglow = after + glow
afterglow = aft + erg + low
alienation = a + lie + nation
alienation = a + lien + at + i + on
alienation = a + lien + at + ion
alienation = alien + at + i + on
alienation = alien + at + ion
archer = arc + her
assassinate = ass + as + sin + ate
assassinate = ass + ass + in + ate
assassinate = assassin + ate
backpedalled = back + pedal + led
backpedalled = back + pedalled
backpedalled = backpedal + led
goatskin = go + at + skin
goatskin = goat + skin
goatskin = goats + kin
hospitable = ho + spit + able
temporally = tempo + rally
windowed = win + do + wed
windowed = wind + owed
weatherproof = we + at + her + pro + of
yeasty = ye + a + sty
わかりました。:-)
ルール
- 任意のプログラミング言語を使用します。各言語の文字数による最短コードが優先されます。つまり、使用する言語ごとに1人の勝者がいます。全体的な勝者は、提出されたすべての中で最も短いコードになります。
- 入力リストには、テキストファイル、標準入力、または言語が提供するリスト構造(リスト、配列、辞書、セットなど)を使用できます。単語は、英語またはその他の自然言語です。(リストが英語の単語である場合、「a」と「i」を除く単一文字の項目を無視するか、事前に除外します。同様に、他の言語では、意味のない項目を無視しますファイルに表示されます。)
- 出力リストは、テキストファイル、標準出力、または言語が使用する任意のリスト構造にすることができます。
- 任意の入力ディクショナリを使用できますが、多すぎるあいまいな単語、難解な単語、または難解な単語を提供するものではなく、賢明な単語を提供するものを使用することをお勧めします。これは私が使用したファイル:58000以上の英単語のCorncobリスト
ご質問
この課題は、主にタスクを達成するためのコードを書くことですが、結果をくまなく調べることも楽しいです...
- 最も一般的に使用されるサブワードは何ですか?
- どの単語が最大数のサブワードに分解できますか?
- どの単語を最も異なる方法で分解できますか?
- 最大のサブワードで構成される単語は何ですか?
- 最もおもしろかった分解は何ですか?
alienation
切り取って貼り付けたときの2つの分解を見逃しました。修正されました。他の点では、上記のリストはほんの小さなサンプリングです。私のテストプログラムは、Corncobリストが与えられたときに何万もの回答を生成しました。