Given a screen containing alphabets from a-z, we can go from one character to another character using a remote. The remote contains left, right, top and bottom keys.
Find the shortest possible path to type all characters of given string using the remote. The initial position is top left and all characters of input string should be printed in order. Find the total number of moves in such a path(Move UP, DOWN, LEFT, RIGHT). Pressing OK also accounts for one move.
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
Input: str = "abc" Output: 5 Explanation: Remote's position is at 'a' initially. So 'a' -> 'b' = 1 step, 'b'-> 'c'= 1 step. Three OK moves will also be needed to print the three characters.
Input: str = "a" Output: 1 Explanation: Remote is initially at 'a'.
You don't need to read or print anything. Your task is to complete the function FindPath() which takes the string str as input parameter and returns the minimum number of moves to cover all characters of the given string.
Expected Time Compelxity: O(n)
Expected Space Complexity: O(1)
1 <= |str| <= 105
We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?Yes