每一盞燈會在輪到他的因數的時候被按,(如7號燈有因數1跟7,第1跟第7個人會去按), 所以每一盞燈被按的次數就是它的編號的因數數量,
一開始燈是關著的,而最後開著的燈就代表它的按鈕被按了奇數次, 所以這個題目其實就是要找1~100裡面有奇數個因數的數字,
怎麼判斷一個數字有幾個因數呢? 國中以上的網友應該有學過,把數字寫成標準分解式,也就是分解成數個質數的相乘, 如:24=23x3, 36=22x32, ... 然後把每個次方數+1相乘,就是該數的因數個數, 如:24的因數有(3+1)x(1+1)=8個,36的因數有(2+1)x(2+1)=9個,...
假設一個數字的次方數分別為a, b, c, ...,那麼他的因數就有(a+1)(b+1)(c+1)...個, 若要(a+1)(b+1)(c+1)...是奇數,則(a+1), (b+1), (c+1), ...每個都要是奇數才行, 那麼a, b, c,...就每個都要是偶數, 也就是這個數字是一些數的偶數次方相乘的結果,所以它一定是某個數的2次方,
因此,有奇數個因數的數字,就是像12, 22, 32, ...這類的完全平方數, 把1~100裡的完全平方數都列出來,就是答案啦!