हमें एक JavaScript फ़ंक्शन लिखना है जो एकमात्र आर्गुमेंट के रूप में पूर्णांकों की एक सरणी लेता है।
इनपुट के रूप में ली गई सरणी के आधार पर, फ़ंक्शन को निम्नलिखित मानदंडों के आधार पर समान लंबाई की एक नई सरणी बनानी चाहिए।
आउटपुट सरणी का कोई भी संबंधित तत्व अब तक मिले तीन सबसे बड़ी संख्याओं का गुणनफल होना चाहिए। यदि संबंधित सूचकांक 3 से कम है (हमने अभी तक तीन तत्वों का सामना नहीं किया है) तो संबंधित मान -1 होना चाहिए। और यद्यपि हम गुणनफल की गणना के लिए गैर-अद्वितीय मानों का उपयोग कर सकते हैं, लेकिन वे गैर-अद्वितीय मान अलग-अलग सूचकांकों पर मौजूद होने चाहिए।
उदाहरण
यदि इनपुट सरणी है:
const arr = [1, 2, 3, 4, 5, 6];
तो आउटपुट होना चाहिए:
const output = [-1, -1, 6, 24, 60, 120];
कोड उदाहरण
const arr = [1, 2, 3, 4, 5, 6];
const maximumTripleProduct = (arr = []) => {
const res = [];
const max = [arr[0], arr[1], arr[2]];
res[0] = res[1] = -1;
res[2] = arr[0] * arr[1] * arr[2];
for(let i = 3; i < arr.length; i++){
max.push(arr[i]);
max.sort((a, b) => b - a);
max.pop();
res[i] = max[0] * max[1] * max[2];
};
return res;
};
console.log(maximumTripleProduct(arr));
आउटपुट
[-1, -1, 6, 24, 60, 120]