suppose you have a random list of people standing in a queue each person is described by a pair of integers h k where h is the height of the person and k is the number of people in front of this person who have a height greater than or equal to h write an algorithm to reconstruct the queue note the number of people is less than 1 100 example input 7 0 4 4 7 1 5 0 6 1 5 2 output 5 0 7 0 5 2 6 1 4 4 7 1 type people listlistint rtype listlistint suppose you have a random list of people standing in a queue each person is described by a pair of integers h k where h is the height of the person and k is the number of people in front of this person who have a height greater than or equal to h write an algorithm to reconstruct the queue note the number of people is less than 1 100 example input 7 0 4 4 7 1 5 0 6 1 5 2 output 5 0 7 0 5 2 6 1 4 4 7 1 type people list list int rtype list list int
def reconstruct_queue(people):
    
    queue = []
    people.sort(key=lambda x: (-x[0], x[1]))
    for h, k in people:
        queue.insert(k, [h, k])
    return queue