[LeetCode]#2037. Minimum Number of Moves to Seat Everyone
Environment: Python 3.8
Key technique: sort
n seats and
n students in a room. You are given an array
seats of length
seats[i] is the position of the
ith seat. You are also given the array
students of length
students[j] is the position of the
You may perform the following move any number of times:
- Increase or decrease the position of the
1(i.e., moving the
ithstudent from position
x + 1or
x - 1)
Return the minimum number of moves required to move each student to a seat such that no two students are in the same seat.
Note that there may be multiple seats or students in the same position at the beginning.
Input: seats = [3,1,5], students = [2,7,4]
Explanation: The students are moved as follows:
- The first student is moved from from position 2 to position 1 using 1 move.
- The second student is moved from from position 7 to position 5 using 2 moves.
- The third student is moved from from position 4 to position 3 using 1 move.
In total, 1 + 2 + 1 = 4 moves were used.
- Sort seats and students.
- Use for loop.
- Get difference abs(seats[i]-students[i]) and sum them.
def minMovesToSeat(self, seats, students):
for i in range(len(seats)):