আমাদের রেঞ্জের দুটি সেট আছে; একটি হল যেকোনো দৈর্ঘ্যের একক পরিসর (R1) এবং অন্যটি হল পরিসীমার একটি সেট (R2) যার কিছু অংশ বা অংশ একক পরিসরের (R1) মধ্যে থাকতে পারে বা নাও থাকতে পারে।
আমাদের (R2) - সম্পূর্ণ বা আংশিক - যেটি একক পরিসরের (R1) মধ্যে রয়েছে সেগুলির যোগফল গণনা করতে হবে৷
const R1 = [20,40]; const R2 = [[14,22],[24,27],[31,35],[38,56]];
ফলাফল
= 2+3+4+2 = 11
R1 = [120,356]; R2 = [[234,567]];
ফলাফল
122
উদাহরণ
আসুন কোড লিখি −
const R1 = [20,40]; const R2 = [[14,22],[24,27],[31,35],[38,56]]; const R3 = [120,356]; const R4 = [[234,567]]; function sumRanges(range, values) { const [start, end] = range; const res = values.reduce((acc, val) => { const [left, right] = val; const ex1 = Math.min(right, end); const ex2 = Math.max(left, start); const diff = ex1 - ex2; return acc + Math.max(0, diff); }, 0); return res; }; console.log(sumRanges(R1, R2)); console.log(sumRanges(R3, R4));
আউটপুট
এবং কনসোলে আউটপুট হবে −
11 122