মান লক্ষ্য করুন আমাদের কাছে একটি ইন্টারভালের তালিকা intervals আছে। আমাদের কাজ হল সেগুলোর ইউনিয়ন (union) বের করে সর্টেড সিকোয়েন্সে রিটার্ন করা।
উদাহরণস্বরূপ, যদি ইনপুট হয় inv = [[2, 5],[4, 10],[20, 25]], তবে আউটপুট হবে [[2, 10], [20, 25]]।
intervalsতালিকাটি সর্ট করুন।ans := []- প্রতিটি
(s, e)এর জন্যintervals-এ:- যদি
ansখালি না হয় এবংs <= ans[-1][1]হয়, তবে:ans[-1][1] := max(ans[-1][1], e)
- অন্যথায়,
[s, e]কেans-এ ঢুকান।
- যদি
ansরিটার্ন করুন।
class Solution:
def solve(self, intervals):
intervals.sort()
ans = []
for s, e in intervals:
if ans and s <= ans[-1][1]:
ans[-1][1] = max(ans[-1][1], e)
else:
ans.append([s, e])
return ans
ob = Solution()
inv = [[2, 5],[4, 10],[20, 25]]
print(ob.solve(inv))
[[2, 5],[4, 10],[20, 25]]
[[2, 10], [20, 25]]