আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যেটি সংখ্যার একটি অ্যারেতে নেয়, প্রথম আর্গুমেন্ট হিসাবে, arr এবং দ্বিতীয় আর্গুমেন্ট হিসাবে একটি একক সংখ্যা, num।
ফাংশনটি তখন এমন দুটি সংখ্যা খুঁজে বের করবে যার যোগফল অ্যারেতে সবচেয়ে বেশি কিন্তু সংখ্যার সংখ্যার চেয়ে কম। যদি এমন কোন দুটি সংখ্যা না থাকে যার যোগফল সংখ্যার চেয়ে কম হয়, তাহলে আমাদের ফাংশনটি -1 প্রদান করবে।
যেমন −
যদি ইনপুট অ্যারে এবং সংখ্যা হয় −
const arr = [34, 75, 33, 23, 1, 24, 54, 8]; const num = 60;
তারপর আউটপুট −
হওয়া উচিতconst output = 58;
কারণ 34 + 24 হল সবচেয়ে বড় যোগফল যা 60
এর কমউদাহরণ
এর জন্য কোড হবে −
const arr = [34, 75, 33, 23, 1, 24, 54, 8]; const num = 60; const lessSum = (arr = [], num = 1) => { arr.sort((a, b) => a - b); let max = -1; let i = 0; let j = arr.length - 1; while(i < j){ let sum = arr[i] + arr[j]; if(sum < num){ max = Math.max(max,sum); i++; }else{ j--; }; }; return max; }; console.log(lessSum(arr, num));
আউটপুট
এবং কনসোলে আউটপুট হবে −
58