diff options
Diffstat (limited to 'scratch/facebook/nearby-words.py')
-rw-r--r-- | scratch/facebook/nearby-words.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/scratch/facebook/nearby-words.py b/scratch/facebook/nearby-words.py new file mode 100644 index 000000000000..d2fc3cf5cfcc --- /dev/null +++ b/scratch/facebook/nearby-words.py @@ -0,0 +1,33 @@ +def nearby_chars(c): + keyboard = [ + "qwertyuiop", + "asdfghjkl", + "zxcvbnm", + ] + + for row in keyboard: + for i in range(len(row)): + if row[i] == c: + result = set() + if i + 1 < len(row): + result.add(row[i + 1]) + if i - 1 >= 0: + result.add(row[i - 1]) + return result + +def is_word(word): + words = { + "hello", + } + return word in words + +def nearby_words(x): + result = set() + for i in range(len(x)): + for c in nearby_chars(x[i]): + candidate = x[0:i] + c + x[i+1:] + if is_word(candidate): + result.add(candidate) + return result + +print(nearby_words('gello')) |