• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    批处理解约瑟夫环应用题代码
    题目:
      有二十九个女生(分别用1-29号来称呼)围成一圈玩报数游戏,规则是这样的:从1开始数数,当数到3的这个人就退出游戏,而她后面的人接着从1数。。。如此一直到最后剩下一个人,现在知道最初是从13号女生开始的游戏,问最后剩下的会是第几号女生?
    要求:
      1 用批处理解答
      2 代码简洁高效
      3 代码通用且不生成临时文件
    加分原则:
      以思路为重(如思路独特,请简要说明)
      完全符合要求的加10分

      已有两套解决方案,见3楼more和6楼ieutk版主的代码,但个人认为这两套方案均不完美(见本人的跟贴评述),期
    待完美方案的出现,大家加油了!!!

    注:约瑟夫问题
      约瑟夫问题是个有名的问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的人的序号为5,4,6,2,3。最后剩下1号。
    more:
    复制代码 代码如下:

    @echo off
    set "str=13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 1 2 3 4 5 6 7 8 9 10 11 12"
    :again
    for /f "tokens=1,2,4*" %%a in ("%str%") do (
    if not "%%c"=="" (set "str=%%c %%d %%a %%b"goto :again) else (echo %%bpauseexit)
    )
     

    ieutk:
    复制代码 代码如下:

    @echo off
    setlocal enabledelayedexpansion
    for /l %%a in (12 -1 1) do set "str= %%a !str!"
    for /l %%a in (29 -1 13) do set "str= %%a !str!"

    :main
    set "ie=0"
    for %%a in (%str%) do set /a ie+=1
    if %ie% neq 1 (
    for %%a in (%str%) do (
    set /a num+=1
    if !num! equ 3 (
    set "num=0"
    set "str=!str: %%a =!
    )
    )
    goto main
    )
    echo %str%
    pause
     

    batman:
    复制代码 代码如下:

    @echo offsetlocal enabledelayedexpansion
    for /l %%a in (13,1,29) do set "str=!str! #%%a#"
    for /l %%a in (1,1,12) do set "str=!str! #%%a#"
    :lp
    for %%a in (!str!) do (
    set /a n+=1
    if !n! equ 3 set "str=!str: %%a=!"set /a n=0
    )
    for /f "tokens=2" %%a in ("%str%") do if "%%a" neq "" goto lp
    echo 最后剩下的是%str:#=%号pause>nul
    您可能感兴趣的文章:
    • 一个报数游戏js版(约瑟夫环问题)
    • 约瑟夫环问题(数组法)c语言实现
    • C++循环链表之约瑟夫环的实现方法
    • 详解约瑟夫环问题及其相关的C语言算法实现
    • java 实现约瑟夫环的实例代码
    • python超简单解决约瑟夫环问题
    • php解决约瑟夫环示例
    • 深入理解约瑟夫环的数学优化方法
    • 约瑟夫环问题的PHP实现 使用PHP数组内部指针操作函数
    • javascript循环链表之约瑟夫环的实现方法
    上一篇:批处理重命名特殊文件名的代码
    下一篇:批处理实现文本内容居中显示的代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    批处理解约瑟夫环应用题代码 批处,理解,约瑟夫,环,应用题,