Skip to content

Latest commit

 

History

History
20 lines (13 loc) · 759 Bytes

319.-bulb-switcher.md

File metadata and controls

20 lines (13 loc) · 759 Bytes

319. Bulb Switcher

  • 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 every i bulb. For the nth round, you only toggle the last bulb.

    Return the number of bulbs that are on after n rounds.

Analysis

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))