ধরুন আমাদের কাছে ব্যবধানের একটি তালিকা এবং পয়েন্ট নামক একটি মান আছে। প্রতিটি ব্যবধানের ব্যবধান[i] ধারণ করে [si, ei] শুরুর সময় এবং ব্যবধানের শেষ সময় (উভয়ই অন্তর্ভুক্ত)। প্রদত্ত বিন্দুতে ছেদকারী ব্যবধানের সংখ্যা আমাদের খুঁজে বের করতে হবে।
সুতরাং, যদি ইনপুটটি অন্তরের মত হয় =[[2, 6],[4, 10],[5, 9],[11, 14]] পয়েন্ট =5, তাহলে আউটপুট হবে 3, কারণ সময়ে 5, 3টি ব্যবধান রয়েছে যেগুলি হল [3, 6], [4, 10], [5, 9]
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
গণনা :=0
-
প্রতিটি শুরুর সময় i এবং শেষ সময় j ব্যবধানে, করুন
-
যদি বিন্দু>=i এবং বিন্দু <=j, তাহলে
-
গণনা :=গণনা + 1
-
-
-
ফেরত গণনা
উদাহরণ
আসুন আরও ভালভাবে বোঝার জন্য নিম্নলিখিত বাস্তবায়ন দেখি
def solve(intervals, point):গণনা =0 for i, j in intervals:if point>=i এবং পয়েন্ট <=j:count +=1 রিটার্ন কাউন্টিন্টারভাল =[[2, 6],[4, 10 ],[5, 9],[11, 14]]পয়েন্ট =5প্রিন্ট(সমাধান(ব্যবধান, পয়েন্ট))
ইনপুট
<প্রে>[[2, 6],[4, 10],[5, 9],[11, 14]], 5আউটপুট
3