हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो पहले तर्क के रूप में संख्याओं की एक सरणी लेता है और दूसरे तर्क के रूप में n कहते हैं। संख्या n हमेशा सरणी की लंबाई से कम या उसके बराबर होगी।
हमारे फ़ंक्शन को मूल सरणी से लंबाई n के सभी संभावित उप-सरणी के सभी तत्वों के योग की एक सरणी वापस करनी चाहिए।
उदाहरण के लिए, यदि इनपुट है -
const arr = [2, 6, 4]; const n = 2;
तब आउटपुट होना चाहिए -
const output = [8, 10, 6];
उदाहरण
इसके लिए कोड होगा -
const arr = [2, 6, 4];
const n = 2;
const buildCombinations = (arr, num) => {
const res = [];
let temp, i, j, max = 1 << arr.length;
for(i = 0; i < max; i++){
temp = [];
for(j = 0; j < arr.length; j++){
if (i & 1 << j){
temp.push(arr[j]);
};
};
if(temp.length === num){
res.push(temp.reduce(function (a, b) { return a + b; }));
};
};
return res;
}
console.log(buildCombinations(arr, n)); आउटपुट
कंसोल में आउटपुट -
[ 8, 6, 10 ]