class Solution: def reconstructQueue(self, p: List[List[int]]) -> List[List[int]]: p.sort() n = len(p) for i in range(n - 1, -1, -1): cur = p[i] ctn = 0 for j in range(i - 1, -1, -1): if p[j][0] != cur[0]: break ctn += 1 it = cur[1] - ctn for j in range(it): p[i + j] = p[i + j + 1] p[i + it] = cur return p