
Follow Ghost Legs

Ghost leg is a well-known method used to get random results. This mechanism has the effect of changing the order in the list.
Examples:
assert follow_ghost_legs(3, [(1, 2), (2, 3), (1, 2)]) == [3, 2, 1] assert follow_ghost_legs(4, [(2, 3), (1, 2), (2, 3), (3, 4)]) == [3, 2, 4, 1] assert follow_ghost_legs(5, [(3, 4), (4, 5), (3, 4), (2, 3), (3, 4)]) == [1, 5, 4, 2, 3] assert follow_ghost_legs(6, [(1, 2), (2, 3), (3, 4), (4, 5), (5, 6)]) == [ 2, 3, 4, 5, 6, 1, ]
You are given the number of vertical lines and a list of legs as input values.
- If the number of vertical lines is 3, then the starting points are 1, 2, and 3 respectively.
- The leg is a tuple of two integers, which represent the two vertical lines connected by the leg. (The leg always connects adjacent vertical line).
- The order of legs represents the level at which they are placed (first leg is the top, and last leg is the bottom).
Follow the ghost legs and return a list of converted numbers.
Input: The number of vertical lines and a list of legs (an integer and a list of tuple of two integers).
Output: A list of converted numbers (a list of integers).