両親はホームシアターデバイスを持っています。リモートが壊れているため、メニュー内を右にナビゲートするのが非常に難しくなります。ほとんどの場合は動作しませんが、動作すると非常に速く右に移動します。
これは明らかにイライラしますが、次のようなキーボードの操作が必要な映画のタイトルを入力する場合は、最もイライラします。
a b c d e f
g h i j k l
m n o p q r
s t u v w x
y z 1 2 3 4
5 6 7 8 9 0
あなたの仕事は、入力として映画のタイトルを取得し、その映画のタイトルを入力することの「イライラ」を計算することです。特定の文字列のフラストレーション数は、その前の文字から右に移動する必要がある文字の数です。それらがどれだけ正しいかは気にしません。なぜなら、右に移動し始めるとすぐに行の終わりに移動するからです。また、上、下、左への移動は簡単なので気にしません。
たとえば、入力したい場合
keyboard
k
無料で始めます。e
上にあるk
ので、正しく移動する必要はありません。y
ずっと左にあるので、右に移動する必要はありません。b
ただし、右の次の列にあるので、それに到達するには右に移動する必要があります。o
次の列にありますので、右に移動しなければなりません。a
最初の列に戻ったので、左に移動します。r
右側にあるので、すぐに移動します。d
の列の左側に2列ありr
ます。
右に移動する必要があるキャラクターはbor
、これがフラストレーション3であることを意味しています。
追加のルール
これはコードとゴルフのチャレンジであるため、回答はバイト単位でスコアリングされ、バイト数は少ない方が良いでしょう。入力は常に英数字で構成され、大文字または小文字のいずれかをサポートでき、サポートする必要があるのは1文字のみです。入力が空になることはありません。
テストケース
keyboard -> 3
2001aspaceodyssey -> 6
sorrytobotheryou -> 8
thinblueline -> 5
blast2 -> 3
90 -> 1
"blast2" -> 3
実際の映画ではありませんが、一部の回答にはそのようなテストケースに問題があります)