コード「5SBDO0」が記載されたカードを誰かに渡すと想像してください。
一部のフォントでは、文字「S」を数字の5や数字の0や文字「O」と視覚的に区別するのが困難です。
コードを大声で読むと、「B」を「D」と区別するのが難しい場合があります。「Bは男の子のように」、「Dは犬のように」と言うか、代わりに「表音アルファベット」を使用します。
ほとんどの場合、視覚的に曖昧に見えず、読み上げられたときに曖昧に聞こえない文字と数字の最大のサブセットは何ですか?
バックグラウンド:
できるだけ簡単に通信しながら、できるだけ多くの値をエンコードできる短い文字列を生成する必要があります。
6文字の文字列「123456」があるとします。10進数では、10 ^ 6値をエンコードできます。
16進数の「1B23DF」では、16個の ^ 6値を同じ文字数でエンコードできますが、読み上げたときにあいまいに聞こえることがあります。(「B」と「D」)
同様に、N文字の文字列の場合、(アルファベットのサイズ)^ Nの値を取得します。
文字列の長さは約6文字に制限されています。これは、人間の作業メモリ容量の容量内に簡単に収まるようにするためです。
したがって、エンコード可能な値の最大数を見つけるには、文字/数字の最大の明確なセットを見つける必要があります。GZの文字や一般的な句読点を考慮できない理由はありませんが、「GはAのように聞こえますか?」、「GはBのように聞こえますか?」、「 GはC "のように聞こえます。私たちが知っているように、これはO(n ^ 2)行うべき言語作業=)...