Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- exlist = [('snow', 0)]
- want = 'asiansquid'
- alphabet = 'abcdefghijklmnopqrstuvwxyz'
- while exlist:
- word, turn = exlist.pop(0)
- print(word, turn)
- if word == want:
- print('Found it!')
- break
- # No bowser, so can't remove letters
- if len(word) > len(want):
- continue
- if turn == 10:
- continue
- # Bullet Bill: Replace first letter
- for letter in alphabet:
- exlist.append((letter + word[1:], turn+1))
- # Blooper: Inject at second/secondlast
- for letter in alphabet:
- newWord = word[0] + letter + word[1:-1] + letter + word[-1]
- exlist.append((newWord, turn+1))
- # Wiggler: Change letter to surrounding
- for i,letter in enumerate(word):
- letterIndex = alphabet.index(letter)
- if letterIndex != 0 and letterIndex != 25:
- newLetters = alphabet[letterIndex-1] + alphabet[letterIndex+1]
- elif letterIndex == 0:
- newLetters = 'zb'
- elif letterIndex == 1:
- newLetters = 'ya'
- newWord = word[:i] + newLetters + word[i+1:]
- exlist.append((newWord, turn + 1))
- # Lakitu: move it
- for i in range(len(word)):
- newWord = word[i:] + word[:i]
- exlist.append((newWord, turn + 1))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement