Google Code Challengeに触発された:
ラテンアルファベットには26文字が含まれ、電話のキーパッドには10桁しかありません。キープレスのシーケンスを使用して目的の文字を示すことで、友人へのメッセージを簡単に書くことができます。以下に示すように、文字は数字にマッピングされます。たとえば、文字Bを挿入する場合、プログラムは22を押します。同じキーから2文字を連続して挿入するには、ユーザーはキーをもう一度押す前に一時停止する必要があります。一時停止を示すには、スペース文字「」を印刷する必要があります。たとえば、2 2はAAを示し、22はBを示します。
各メッセージは、小文字a〜zおよびスペース文字 ''のみで構成されます。ゼロを押すとスペースが放出されます。

あなたの挑戦は、入力文字列を受け取り、入力を文字列として生成するか、標準出力に出力するのに必要なキー押下のシーケンスを返す最小の関数を書くことです。最小のバイト数である関数が優先されます。
入出力の例
phone("hi")
44 444
phone("hello world")
4433555 555666096667775553
その他の説明
- 一時停止は必要な場合にのみ追加し、スペース「」にする必要があります。
- 各メッセージは、小文字 a〜zおよびスペース文字 '' のみで構成されます。印刷
0してスペースを示します。 - 外部ライブラリはありません。
- 入力文字列のみが関数に渡されます。
- 他の言語の競争力を高めるために、主要な関数宣言は考慮されず、他の標準ライブラリのインポートも行いません。
#includes、imports、およびusingsはカウントされません。他のすべてが行います。これには、#definesおよびヘルパー関数が含まれます。混乱している場合は、この質問のルール2を参照してください。 - 複数のスペースは、スペースとして一時停止する必要がないため、
00または0 0
{}は関数シグネチャの一部と考えていますか?たとえば、コードがの場合、またはfunction f(){alert('hi');}の文字を数える必要がありますalert('hi');か{alert('hi');}?
t9いる限りでは、動作が異なります。単語を取得するには、各キーを1回クリックする必要があります。