
😎풀이
- 해당 문제는 다음과 같은 규칙이 있음
1-1. N개의 전구를 N개의 라운드가 지난 후 몇 개가 켜져있는지 확인해야함
1-2. 1단계에선 모든 전구를 켬
1-3. 2단계에선 2의 배수에 해당하는 전구를 끔
1-4. N단계에선 N의 배수에 해당하는 전구를 토글함(ON -> OFF, OFF -> ON)
- 문제를 보았을 때 홀수번 호출되는 전구가 켜짐
- 홀수번 호출된다는 것은 약수의 개수가 홀수라는 것
- 완전제곱수(1, 4, 9, ...)는 약수의 개수가 홀수임, 왜냐하면 같은 수의 곱이 있기 때문
- 즉 n의 제곱근이 켜져있는 전등의 수임
function bulbSwitch(n: number): number {
return Math.floor(Math.sqrt(n))
};