Menu Close

Return the shortest distance between these two words.

Given a list of words and two words word1 and word2, return the shortest distance between these two words in the list.

For example,
Assume that words = [“practice”, “makes”, “perfect”, “coding”, “makes”].

Given word1 = “coding”, word2 = “practice”, return 3.
Given word1 = “makes”, word2 = “coding”, return 1.

list=input('Enter the string : ').split(' ')
word1=input('Enter word1 : ')
word2=input('Enter word2 : ')
pos1=None
pos2=None
for i in range(len(list)):
	if list[i] == word1 :
		pos1=i
	if list[i] == word2 :
		pos2=i
if pos1 == None or pos2 == None :
	print(0)
else:
	print(abs(pos1-pos2))

Input_1:
Enter the string : fcuk the code . com
Enter word1 : fcuk
Enter word2 : code
Output:
2


Input_2:
Enter the string : eat code sleep repeat
Enter word1 : code
Enter word2 : sleep
Output:
1


Input_3:
Enter the string : practice makes perfect coding makes
Enter word1 : coding
Enter word2 : practice
Output:
3


Input_4:
Enter the string : practice makes perfect coding makes
Enter word1 : makes
Enter word2 : coding
Output:
1


Demo Output:

Executed python3 using Linux terminal

More Q