আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি সংখ্যার অ্যারে নেবে। ফাংশনটি মূল অ্যারেতে থেকে দুটি আডজেসেন্ট এলিমেন্টের সাব-অ্যারে রিটার্ন করবে যাদের যোগফল সবচেয়ে কম।
যদি অ্যারের দৈর্ঘ্য ২-এর চেয়ে কম হয়, তবে false রিটার্ন করবে।
উদাহরণ, ইনপুট অ্যারে −
const arr = [41, 44, -12, 13, -23, 1, 5, -4, 2, 2];
এখানে, [-23, 1] জোড়ার যোগফল -22 যা যেকোনো দুটি আডজেসেন্ট এলিমেন্টের জন্য ন্যূনতম, তাই ফাংশনটি [-23, 1] রিটার্ন করবে।
কোডটি হবে −
const arr = [41, 44, -12, 13, -23, 1, 5, -4, 2, 2]; const leastSum = arr => { if(arr.length <= 2){ return false; }; const creds = arr.reduce((acc, val, ind) => { let { smallest, startIndex } = acc; const next = arr[ind+1] ; if(!next){ return acc; } const sum = val + next; if(sum < smallest){ startIndex = ind; smallest = sum; }; return { startIndex, smallest }; }, { smallest: Infinity, startIndex: -1 }); const { startIndex } = creds; return [arr[startIndex], arr[startIndex + 1]]; }; console.log(leastSum(arr));
কনসোলে আউটপুট −
[-23, 1]