男人天堂日韩,中文字幕18页,天天伊人网,成人性生交大片免费视频

理解約瑟夫環(huán)應(yīng)用題代碼

時間:2021-06-12 09:18:55 試題 我要投稿

關(guān)于理解約瑟夫環(huán)應(yīng)用題代碼

  題目:

  有二十九個女生(分別用1-29號來稱呼)圍成一圈玩報數(shù)游戲,規(guī)則是這樣的:從1開始數(shù)數(shù),當數(shù)到3的這個人就退出游戲,而她后面的人接著從1數(shù)。。。如此一直到最后剩下一個人,現(xiàn)在知道最初是從13號女生開始的游戲,問最后剩下的`會是第幾號女生?

  要求:

  1用批處理解答

  2代碼簡潔高效

  3代碼通用且不生成臨時文件

  加分原則:

  以思路為重(如思路獨特,請簡要說明)

  完全符合要求的加10分

  已有兩套解決方案,見3樓more和6樓ieutk版主的代碼,但個人認為這兩套方案均不完美(見本人的跟貼評述),期

  待完美方案的出現(xiàn),大家加油了!!

  注:約瑟夫問題

  約瑟夫問題是個有名的問題:N個人圍成一圈,從第一個開始報數(shù),第M個將被殺掉,最后剩下一個,其余人都將被殺掉。例如N=6,M=5,被殺掉的人的序號為5,4,6,2,3。最后剩下1號。

  more:

  復(fù)制代碼 代碼如下:

  @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 %%b&pause&exit)

  )

  ieutk:

  復(fù)制代碼 代碼如下:

  @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:

  復(fù)制代碼 代碼如下:

  @echo off&setlocal 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

【理解約瑟夫環(huán)應(yīng)用題代碼】相關(guān)文章:

廿二軍規(guī)與約瑟夫海勒12-06

《杜環(huán)小傳》閱讀理解及參考答案03-21

看約瑟夫·愛潑斯坦《嫉妒》有感07-19

黑色幽默與約瑟夫海勒(1)12-06

最新的約瑟夫·布羅茨基經(jīng)典句子02-21

中班語言:約瑟夫有件舊外套08-23

文言文閱讀理解之環(huán)翠亭記05-10

曲阜師范大學(xué)代碼及專業(yè)代碼08-05

js代碼改寫成jq代碼的方法03-14