• 按键公众号 :
按键精灵电脑版
立即下载

软件版本:2014.06
软件大小:22.9M
更新时间:2021-12-03

按键精灵安卓版
立即下载

软件版本:3.7.2
软件大小:46.2M
更新时间:2023-05-10

按键精灵iOS版
立即下载

软件版本:1.8.0
软件大小:29.2M
更新时间:2023-03-21

按键手机助手
立即下载

软件版本:3.8.0
软件大小:262M
更新时间:2023-05-30

快捷导航

登录 后使用快捷导航
没有帐号? 注册

发新话题 回复该主题

按键认证6级考题 100个人手拉手围成一圈,逢三退一解法 [复制链接]

1#
点击关闭鉴定图章


题目如下:100个人手拉手围成一圈,逢三退一(1到3的循环数数,被数到3的人退出)求最后一个被剩下人的编号,请写出代码

解题思路:
把这100个人组成100个数组成员,数组成员的值为改人员的编号
再定义一个新的数组准备存放数数后的数据
然后用取余运算判断该数组成员数是不是能被3整除,如果该数组成员数能被整除则不作处理,否则加入到新的数组并存上编号
每次点数前判断一下有没有余数,如果有,则提前空出新数组存放余数成员数
最后一直循环前面的步骤,直到新数组成员数等于三则跳出循环输出新的数组成员数第三个成员,这就是我们要找的编号


实现代码如下:
  1. [hide]Import "zm.luae"

  2. Dim 编号(),新数组(),余数

  3. For i = 1 To 100
  4. 编号(i - 1) = i
  5. Next

  6. Do
  7. Delay 10
  8. Dim 序号 = 0
  9. zm.TableClear(新数组)
  10. 余数 = CInt(UBOUND(编号) + 1) Mod 3
  11. 序号 = 余数
  12. For i = 1 To UBOUND(编号) + 1 - 余数
  13. If CInt(i) Mod 3 = 0 Then
  14. //TracePrint i
  15. Else
  16. 新数组(序号) = 编号(i - 1)
  17. 序号 = 序号 + 1
  18. End If
  19. Next
  20. //TracePrint UBound(新数组)
  21. If 余数 = 1 Then
  22. 新数组(0) = 编号(UBOUND(编号))
  23. ElseIf 余数 = 2 Then
  24. 新数组(0) = 编号(UBOUND(编号) - 1)
  25. 新数组(1) = 编号(UBOUND(编号))
  26. End If
  27. 编号 = Clone(新数组)
  28. If UBOUND(新数组) = 3 Then
  29. TracePrint 新数组[2]
  30. Exit Do
  31. End If
  32. Loop[/hide]
复制代码

点评

果壳王子  恭喜这位同学喜提“认证考霸”勋章和“教程达人”勋章各一枚  发表于 2021/11/19 10:43:00

    已有1评分我要评分查看所有评分

    本主题由 超级版主 瑞祥幽冥狼 于 2022/1/25 11:09:16 执行 忽略帖子 操作
    2#

    厉害厉害了 等我考6级的时候一定搞会

    诚交天下好友:VX:stnvip
    3#

    我早过6级了, 但客服不理人, 论坛永远都只显示4级, 我不知道为什么

    4#

    这个牛逼啊

    承接各类游戏脚本制作,post,手游,端游,办公,自动化

    有偿解决任何按键基础问题(可远程讲解、教会为止)

    如果我的回答能帮助了你,大家可以加个好友互相了解
    QQ : 262832680
    5#

    回复 3楼yxf123的帖子

    近期认证题库可能会更新,或许这段时间再去找客服处理更容易成功通过呢~

    6#

    冒泡法

    7#

    回复 4楼jy262832680的帖子

    低调低调,就是一个思路解法~

    8#

    有这么简单就好了,这个答案过不了6级,

    9#

    NB,2级我都考5年了

    10#

    回复 9楼xmr182108的帖子

    没事,我现在也是认证二级~

    11#

    该用户帖子内容已被屏蔽

    发新话题 回复该主题