मान लीजिए, हमारे पास इस तरह की संख्याओं की एक सरणी है:
const arr = [-1,-2,-1,0,-1,-2,-1,-2,-1,0,1,0];
हमें एक JavaScript फ़ंक्शन लिखना है जो सरणी में गैर-ऋणात्मक (सकारात्मक और 0) संख्याओं के क्रमागत समूहों (clusters) की गिनती करता है।
यहाँ हमारे पास इंडेक्स 3 से 3 तक क्रमागत गैर-ऋणात्मक हैं (केवल एक तत्व, लेकिन फिर भी एक क्लस्टर) जो एक समूह बनाता है और फिर 9 से सरणी के अंत तक दूसरा समूह बनाता है।
इसलिए, इस सरणी के लिए, फ़ंक्शन को 2 लौटाना चाहिए।
कोड
const arr = [-1,-2,-1,0,-1,-2,-1,-2,-1,0,1,0];
const positiveClusters = arr => {
return arr.reduce((acc, val, ind) => {
if (val >= 0 && (arr[ind+1] < 0 || typeof arr[ind+1] === 'undefined')) { acc++; }
return acc;
}, 0);
};
console.log(positiveClusters(arr));
आउटपुट
2