收集自Category:AutoHotkey – Rosetta Code
1、100 doors
描述:
最初有100扇门都是关闭的
按照如下规则经过100次
第一次:1->2->3->4…访问每扇门并切换门
第二次: 2->4->6->8…访问并切换门
第三次:3->6->9->12…访问并切换门
…
第100次:…
问题:最终哪些是关闭的、哪些是打开的
Loop, 100
Door%A_Index% := "closed"
Loop, 100 {
x := A_Index, y := A_Index
While (x <= 100)
{
CurrentDoor := Door%x%
If CurrentDoor contains closed
{
Door%x% := "open"
x += y
}
else if CurrentDoor contains open
{
Door%x% := "closed"
x += y
}
}
}
Loop, 100 {
CurrentDoor := Door%A_Index%
If CurrentDoor contains open
Res .= "Door " A_Index " is open`n"
}
MsgBox % Res