-
Medium
-
There are
n
bulbs that are initially off. You first turn on all the bulbs, then you turn off every second bulb.On the third round, you toggle every third bulb (turning on if it's off or turning off if it's on). For the
ith
round, you toggle everyi
bulb. For thenth
round, you only toggle the last bulb.Return the number of bulbs that are on after
n
rounds.
This is a pure math problem. The answer is equal to the amount of perfect quare numbers less than the total number bulb, which can be written as floor(sqrt(n)).
class Solution:
def bulbSwitch(self, n: int) -> int:
return floor(sqrt(n))