हमें एक JavaScript फ़ंक्शन लिखना है जो एकमात्र आर्गुमेंट के रूप में एक धनात्मक पूर्णांक, मान लीजिए n, लेता है।
फ़ंक्शन को पहले 1 से n तक के पूर्णांकों को उप-सरणियों में समूहित करना चाहिए जहां एक विशिष्ट उप-सरणी में वे सभी तत्व हों जिनमें एक विशिष्ट अंक योग हो। फिर फ़ंक्शन को प्रत्येक उप-सरणी की जांच करनी चाहिए और उस उप-सरणी की लंबाई लौटानी चाहिए जिसमें सबसे अधिक तत्व हों।
उदाहरण
यदि इनपुट संख्या है:
const num = 15;
तो आउटपुट होना चाहिए:
const output = 2;
क्योंकि समूह हैं:
[1, 10], [2, 11], [3, 12], [4, 13], [5, 14], [6, 15], [7], [8], [9]
कोड उदाहरण
const num = 67;
const countLargestGroup = (num = 1) => {
if(num < 10){
return num;
};
let res = 0;
let temp = 0;
let map = {};
for(let i = 1; i <= num; i++){
let sum = 0;
let num = i;
while (num) {
sum += num % 10;
num = Math.floor(num / 10);
}
if(map[sum] != undefined){
map[sum]++;
} else {
map[sum] = 1;
}
};
for (const key of Object.keys(map)) {
if(temp == map[key]){
res++;
}
else if(temp < map[key]){
res = 1;
temp = map[key];
}
};
return res;
};
console.log(countLargestGroup(num));
आउटपुट
4