想到之前面试的一道题目,解决这个题,就是看到 其约数为基数个时就是亮的。用JS去实现也很简单,两个for循环可以了。个人的解答方法如下
let lightArr = [] // 先循环一遍1到100 for (let index = 1; index <= 100; index++) { let arr = [] for (let j = 1; j <= index; j++) { // 如果index % j等于0则表示j是其index的约数就是往arr里面添加 if (index % j == 0) arr.push(j) } // 后面再判断下arr的长度如果是奇数时则最后是亮的 if (arr.length % 2 !== 0) lightArr.push(index) } console.log("最后灯泡是亮的lightArr里面的值")
最后的结果 是[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]