আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা প্রথম এবং একমাত্র যুক্তি হিসাবে পূর্ণসংখ্যার অ্যারে নেয়৷
ফাংশনটি সর্বাধিক পণ্য খুঁজে পাওয়া উচিত যা অ্যারের যেকোনো দুটি উপাদানকে গুণ করে অর্জন করা যেতে পারে। আমাদের জন্য শর্ত হল যে আমাদের এটি রৈখিক সময় এবং ধ্রুবক স্থানের মধ্যে করতে হবে।
যেমন −
যদি ইনপুট অ্যারে −
হয়const arr = [3, 9, 2, 1, 0];
তারপর আউটপুট −
হওয়া উচিতconst output = 27;
কারণ এটি সর্বশ্রেষ্ঠ পণ্য এবং 3 এবং 9 গুণ করে অর্জন করা যেতে পারে।
উদাহরণ
নিম্নলিখিত কোড -
const arr = [3, 9, 2, 1, 0]; const maxPairProduct = (arr = []) => { let c = Infinity, d = c; let a = -Infinity - 1, b = a; for (const n of arr) { if(n >= a){ b = a; a = n; }else if(n >= b){ b = n; }; if(n <= d){ c = d; d = n; }else if(n <= c){ c = n; }; }; return Math.max(a * b, c * d); }; console.log(maxPairProduct(arr));
আউটপুট
নিম্নোক্ত কনসোল আউটপুট -
27