Python3 O(N)
Intuition\nThe "Maximum Population Year" problem involves finding the year with the maximum population based on a list of birth and death years of individuals. 
# Intuition\nThe "Maximum Population Year" problem involves finding the year with the maximum population based on a list of birth and death years of individuals. The intuition is to create a timeline and track the changes in population over the years to determine the year with the highest population.\n\n# Approach\nTo solve this problem, we adopt the following approach:\n\n1. Initialize a list `res` of size 101 (representing years from 1950 to 2050) with all elements set to 0. This list will be used to track population changes.\n\n2. Iterate through each pair of birth and death years in the `logs` list. For each pair, perform the following steps:\n   - Adjust the birth year by subtracting 1950 to map it to the index in the `res` list (e.g., 1950 maps to index 0).\n   - Adjust the death year similarly.\n   - Increment the population count at the birth year index in the `res` list.\n   - Decrement the population count at the death year index in the `res` list.\n\n3. Create a variable `num` and initialize it to 0. This variable will store the maximum population count.\n\n4. Iterate through the `res` list from index 1 to 100 (representing years 1951 to 2050). For each year, update the population count by adding the population count from the previous year. This step effectively creates a cumulative population count over the years.\n\n5. Find the maximum population count in the `res` list and store it in the `num` variable.\n\n6. Return the year corresponding to the maximum population count by finding its index in the `res` list and adding 1950 to map it back to the actual year.\n\n# Complexity\n- Time complexity: The time complexity is O(n), where \'n\' is the number of pairs in the `logs` list. We iterate through the list once to calculate population changes.\n- Space complexity: The space complexity is O(1) because the `res` list has a fixed size of 101, and we use a constant amount of extra space.\n\n# Code\n```python\nclass Solution:\n    def maximumPopulation(self, logs: List[List[int]]) -> int:\n        res = [0] * (100 + 1)\n\n        for birth, death in logs:\n            birth -= 1950\n            death -= 1950\n\n            res[birth] += 1\n            res[death] -= 1\n\n        for i in range(1, 100):\n            res[i] += res[i - 1]\n\n        num = max(res)\n\n        return res.index(num) + 1950\n```
['Line Sweep', 'Prefix Sum', 'Python3']