<?php
/**
* 大廳裡有100盞燈,每盞燈都編了號碼,分別為1-100。每盞燈由乙個開關來控制。(開關按一下,燈亮,再按一下燈滅。開關的編號與被控制的燈相同。)開始時,燈是全滅的。現在按照以下規則按動開關。
* 第一次,將所有的燈點亮。
* 第二次,將所有2的倍數的開關按一下。
* 第三次,將所有3的倍數的開關按一下。
* 以此類推。第n次,將所有n的倍數的開關按一下。
* 問第100次按完以後,大廳裡還有幾盞燈是亮的。
*/
function
handle(
$m
,
$n
)
//第二步:開關n趟,每趟檢測倍數
for
(
$i
=2;
$i
<
$n
+1;
$i
++)
}
}
return
$arr
;
}
$res
= handle(10, 10);
echo
""
;
print_r(
$res
);
演算法入門經典 開燈問題
演算法入門經典 開燈問題 前言 一直很羨慕那些善於寫演算法的同學,感覺他們真的很聰明,不想我這麼笨,一思考演算法就頭疼。罷了,從最簡單的開始吧,加油。問題 有n盞燈,編號為1 n,第1個人把所有燈開啟,第2個人按下所有編號為2的倍數的開關 這些燈將被關掉 第3個人按下所有編號為3的倍數的開關 其中關...
演算法競賽 開燈問題 C
有n盞燈,編號為1 n。第1個人把所有燈開啟,第2個人按下所有編號為2的倍數的開關 這些燈將被關掉 第2個人按下所有的編號為3的倍數的開關 其中關掉的燈將被開啟,開著的燈將被關閉 以此類推。一共有k個人,問最後有哪些燈開著?輸入n和k,輸出開著的燈編號。k n 1000。樣例輸入 7 3 樣例輸出 ...
77 開燈問題
時間限制 3000 ms 記憶體限制 65535 kb 難度 1 描述 有n盞燈,編號為1 n,第1個人把所有燈開啟,第2個人按下所有編號為2 的倍數的開關 這些燈將被關掉 第3 個人按下所有編號為3的倍數的開關 其中關掉的燈將被開啟,開著的燈將被關閉 依此類推。一共有k個人,問最後有哪些燈開著?輸...