ডেটা স্ট্রিম এজ ডিসজয়েন্ট ইন্টারভালস
একটি ডেটা স্ট্রিম থেকে পূর্ণসংখ্যা আসছে। আমাদের কাজ হলো এখন পর্যন্ত আসা সংখ্যাগুলোকে ডিসজয়েন্ট ইন্টারভাল (অসংযুক্ত अन्तরাল) হিসেবে সারসংক্ষেপ করা।
উদাহরণ: ইনপুট 1, 3, 8, 2, 7 → ইন্টারভালগুলো:
[1,1] → [1,1], [3,3] → [1,1], [3,3], [8,8] → [1,3], [8,8] → [1,3], [7,8]
সমাধানের পদ্ধতি (সেট ব্যবহার)
- একটি
set<int>ব্যবহার করুন সব সংখ্যা রাখার জন্য (সেট স্বয়ংক্রিয় সর্ট করে রাখে) addNum(val): সেটে যোগ করুনgetIntervals(): সেট ট্রাভার্স করে সংলগ্ন সংখ্যাগুলো একসাথে ইন্টারভাল বানান
C++ কোড উদাহরণ
ইনপুট
[1,3,8,2,7]আউটপুট
[[1, 1],] [[1, 1],[3, 3],] [[1, 1],[3, 3],[8, 8],] [[1, 3],[8, 8],] [[1, 3],[7, 8],]