436. Find Right Interval - LeetCode Solution


Binary Search

Python Code:

class Solution:
    def findRightInterval(self, intervals: List[List[int]]) -> List[int]:
        s = sorted([(it[0], i) for i, it in enumerate(intervals)])
        ans = []    
        for it in intervals:
            i = bisect.bisect_left(s, (it[1], -1))
            ans.append(s[i][1] if i < len(s) else -1)
        return ans
        


Comments

Submit
0 Comments
More Questions

519A - A and B and Chess
725B - Food on the Plane
154B - Colliders
127B - Canvas Frames
107B - Basketball Team
245A - System Administrator
698A - Vacations
1216B - Shooting
368B - Sereja and Suffixes
1665C - Tree Infection
1665D - GCD Guess
29A - Spit Problem
1097B - Petr and a Combination Lock
92A - Chips
1665B - Array Cloning Technique
1665A - GCD vs LCM
118D - Caesar's Legions
1598A - Computer Game
1605A - AM Deviation
1461A - String Generation
1585B - Array Eversion
1661C - Water the Trees
1459A - Red-Blue Shuffle
1661B - Getting Zero
1661A - Array Balancing
1649B - Game of Ball Passing
572A - Arrays
1455A - Strange Functions
1566B - MIN-MEX Cut
678C - Joty and Chocolate