この問題を解決するために、単純な python アルゴリズムを作成しようとしています。私のコードが機能しない理由を理解するのを手伝ってもらえますか:
問題:
Jakub は 1 次元キーボードを試しています。1 列のキーで構成されます。隣接する 2 つのキー間の距離は 1 です。各キーには、英語のアルファベットの個別の文字が含まれています。Jakub は 1 本の指だけでキーボードを入力します。彼は、特定の単語を入力するときに指を移動する必要がある最小の合計距離はどれくらいかを考えています。
たとえば、キーボードの唯一の行が "qwertyuiop" で、Jakub が "potter" という単語を入力したい場合、彼は指を 'p' から 'o' (距離 1)、'o' から ' t' (距離 4)、't' から 't' (距離 0)、't' から 'e' (距離 2)、および 'e' から 'r' (距離 1) の合計距離1 + 4 + 0 + 2 + 1 = 8 の
文字列キーボードと文字列単語が与えられ、キーボードと Jakub が書きたい単語を記述します。キーボードで単語を入力するために指を動かさなければならない最小距離を返します。
私のコード:
def typingDistance (keyboard, word):
a=keyboard.find(word[0][:1])
res=0
for i in word:
if keyboard.find(i) != a:
res+=abs(a-i)
a = keyboard.find(i)
return res