문제 링크
https://codingdojang.com/scode/393?answer_mode=hide
1부터 10,000까지 8이라는 숫자가 총 몇번 나오는가?
8이 포함되어 있는 숫자의 갯수를 카운팅 하는 것이 아니라 8이라는 숫자를 모두 카운팅 해야 한다.
(※ 예를들어 8808은 3, 8888은 4로 카운팅 해야 함)
let arr = Array(10000).fill(0).map((el, idx) => idx + 1)
let cnt = 0
for(let i = 1; i <= arr.length; i++) {
i += ''
let eightArr = i.match(/[8]/g)
if(eightArr === null) continue
else cnt += eightArr.length
}
console.log(cnt)
// 4000
const res = Array(10000)
.fill(0)
.map((el, idx) => idx + 1)
.toString()
.split('')
.filter(el => el === '8')
.length
console.log(res)
// 4000
풀이 링크
https://www.youtube.com/watch?v=oIuOhhff3Fk&list=PLkfUwwo13dlWZxOdbvMhkzhAowaiEjuGS&index=37