Imagine a row of 100 closed doors. Now, make 100 passes along the row, and at each pass "toggle" the doors whose number is divisible by the number of the pass. (
By "toggle", we mean to open a closed door, or close an opened one.)
For example, on the first pass, we will toggle all the doors, on the second, we will toggle only the even-numbered doors, on the third - only doors whose number is divisible by three, and so on.
At the end of the 100 passes, how many doors will be left open?
(from techInterview.org)
If there were n doors at the outset, then the numbers of doors left open
= [sqrt(n)]; where [x] is the greatest integer less than or equal to x.
in the given case, n = 100; and so, the numbers of doors left open = [sqrt(100)] = 10