趣味算法题

收集自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

给TA捐赠
共{{data.count}}人
人已捐赠
其他教程

【学习】变量作用域

2021-10-21 14:23:14

教程

【基础】16进制颜色识别和搭配规律

2021-10-25 15:37:51

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
有新私信 私信列表
搜索