在 JavaScript 中查找和位相等的元素最大的组
我们需要编写一个 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
广告