|
bat-zw
金牌会员
      永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
『楼 主』:
一道文本输出题(视完成程序加分)
使用 LLM 解释/回答一下
已知字符串abcdabcdabcdabcd
通过批处理每次随机减少一个字符,输出为如下形式:
一、第一个做出来的予以加3分
----------------------------------------------------------------------------------------------------------
abcdabcdabcdabcd
abcdabcdabcdbcd
abcdabcdbcdbcd
abcdabcdbcbcd
abcdacdbcbcd
bcdacdbcbcd
bcdacdcbcd
bcdaccbcd
bcdacbcd
bcdacbd
bcdacd
bcacd
bccd
bcd
bc
b
二、第一个做出来的加7分
----------------------------------------------------------------------------------------------------------
abcdabcdabcdabcd
abcdabdabcdabcd
abcdbdabcdabcd
abcdbdabdabcd
abcdbdabdabc
abcddabdabc
abcddadabc
abddadabc
abddadab
addadab
adadab
addab
ddab
dab
ab
b
三、第一个做出来的加15分
----------------------------------------------------------------------------------------------------------
abcdabcdabcdabcd abcdabcdabcdabcd
abcdabdabcdabcd abcdabdabcdabcd
abcdbdabcdabcd abcdbdabcdabcd
abcdbdabdabcd abcdbdabdabcd
abcdbdabdabc abcdbdabdabc
abcddabdabc abcddabdabc
abcddadabc abcddadabc
abddadabc abddadabc
abddadab abddadab
addadab addadab
adadab adadab
addab addab
ddab ddab
dab dab
ab ab
b b
ab ab
dab dab
ddab ddab
addab addab
adadab adadab
addadab addadab
abddadab abddadab
abddadabc abddadabc
abcddadabc abcddadabc
abcddabdabc abcddabdabc
abcdbdabdabc abcdbdabdabc
abcdbdabdabcd abcdbdabdabcd
abcdbdabcdabcd abcdbdabcdabcd
abcdabdabcdabcd abcdabdabcdabcd
abcdabcdabcdabcd abcdabcdabcdabcd
Last edited by zw19750516 on 2008-7-10 at 11:55 AM ]
|

批处理之家新域名:www.bathome.net |
|
2008-7-10 10:39 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
|
2008-7-10 10:47 |
|
|
bat-zw
金牌会员
      永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
|
2008-7-10 10:50 |
|
|
pusofalse
银牌会员
    
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
『第 4 楼』:
使用 LLM 解释/回答一下
1.
@echo off&setlocal enabledelayedexpansion
set str=abcdabcdabcdabcd
set n=17
:1
set/a n-=1
set/a m=%random%%%%n%,x=n-m
set str=!str:~,%m%!!str:~-%x%!
echo %str%
if %n% gtr 1 goto 1
pause
|

心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-7-10 12:47 |
|
|
pusofalse
银牌会员
    
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
 『第 5 楼』:
使用 LLM 解释/回答一下
2.
@echo off&setlocal enabledelayedexpansion
set str=abcdabcdabcdabcd
set n=17
:1
set/a n-=1,y+=1
set/a m=%random%%%%n%,x=n-m
set str=!str:~,%m%!!str:~-%x%!
for /l %%a in (1 1 %y%) do set/p= <nul
set/p=%str%<nul
echo.
if %n% gtr 1 goto 1
pause
Last edited by pusofalse on 2008-7-10 at 12:57 PM ]
|

心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-7-10 12:55 |
|
|
pusofalse
银牌会员
    
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
    『第 6 楼』:
使用 LLM 解释/回答一下
3.
@echo off&setlocal enabledelayedexpansion
set str=abcdabcdabcdabcd
set/a n=17,y=0,z=16,l=1
:1
set/a n-=1,y+=1
set/a m=%random%%%%n%,x=n-m
set str=!str:~,%m%!!str:~-%x%!
for /l %%a in (1 1 %y%) do set/p= <nul
set/p=%str%<nul
set/p= %str%<nul
set str%n%=%str% %str%
echo.
if %n% gtr 1 goto 1
:2
set/a l+=1,z-=1
for /l %%a in (1 1 %z%) do set/p= <nul
set/p=!str%l%!<nul
echo.
if %z% gtr 1 goto 2
pause
|

心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-7-10 13:07 |
|
|
quya
高级用户
    五星老土
积分 558
发帖 172
注册 2003-2-9 来自 江苏
状态 离线
|
|
2008-7-10 13:15 |
|
|
bat-zw
金牌会员
      永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
|
2008-7-10 13:17 |
|
|
pusofalse
银牌会员
    
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
『第 9 楼』:
使用 LLM 解释/回答一下
在前辈们面前我永远只是新手而已。。。解题是因为以前从没涉猎过类似的题目,想知道自己能力,加不加分无所谓,我不是为了这个,能够有新的思路才是最重要的。。^_^
|

心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-7-10 13:18 |
|
|
bat-zw
金牌会员
      永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
『第 10 楼』:
使用 LLM 解释/回答一下
Originally posted by pusofalse at 2008-7-10 13:18:
在前辈们面前我永远只是新手而已。。。解题是因为以前从没涉猎过类似的题目,想知道自己能力,加不加分无所谓,我不是为了这个,能够有新的思路才是最重要的。。^_^
我这所以还是为你加了分是因为你那个set n=17,说老实话,我是没想到的,我的代码比你的复杂。
|

批处理之家新域名:www.bathome.net |
|
2008-7-10 13:20 |
|
|
bat-zw
金牌会员
      永远的学习者
积分 3105
发帖 1276
注册 2008-3-8
状态 离线
|
『第 11 楼』:
使用 LLM 解释/回答一下
都不敢拿出手了,但是思路还是不同,代码也通用,还是发出来一起研究下了:
@echo off&setlocal enabledelayedexpansion
set str=abcdabcdabcdabcd
set code=%str%
echo %code% %code%
:lp
set a=%str:~,1%&set /a num+=1
set var=%var% %a%&set str=%str:~1%
if defined str goto lp
set n=%num%
:loop
set "kong= "
set /a a=%random%%%%n%+1,b=num-n
for /l %%i in (1,1,%b%) do set kong= !kong!
for %%i in (%var%) do (
set /a m+=1
if "%a%" neq "!m!" set str=!str! %%i
)
set var=%str%&set str=&set /a n-=1,m=0,c+=1
set _%c%=%var: =%&set .%c%=%kong%%var: =%
if %n% neq 0 echo %kong%%var: =% %var: =%&goto loop
set /a c-=2
for /l %%i in (%c%,-1,1) do echo !.%%i! !_%%i!
echo %code% %code%
pause>nul
|

批处理之家新域名:www.bathome.net |
|
2008-7-10 13:25 |
|
|
26933062
银牌会员
    
积分 2268
发帖 879
注册 2006-12-19
状态 离线
|
『第 12 楼』:
使用 LLM 解释/回答一下
^_^
@echo off&mode con: cols=50 lines=33&color 1f
::获取字符串的长度
set "str=abcdabcdabcdabcd"
setlocal enabledelayedexpansion
for /l %%a in (0 1 100) do if not "!str:~%%a,1!"=="" set /a m=%%a+1
endlocal&set /a m=%m%&echo.
::第一题、==============================================
setlocal enabledelayedexpansion
:loop1
set /a w=!random!%%m+1,h=w-1,m-=1
set str=!str:~0,%h%!!str:~%w%!
echo !str!
if !m! neq 1 goto loop1
ping/n 2 127.1>nul
::第二题、==============================================
cls&endlocal&echo.
setlocal enabledelayedexpansion&color 1a
:loop2
set /a w=!random!%%m+1,h=w-1,m-=1
set str=!str:~0,%h%!!str:~%w%!
echo %ko%!str!
set "ko= %ko%"
if !m! neq 1 goto loop2
ping/n 2 127.1>nul
::第三题、==============================================
cls&endlocal&echo.
setlocal enabledelayedexpansion&color 1e
:loop3
set /a n+=1,w=!random!%%m+1,h=w-1,m-=1
set num%n%=%ko%%str% %str%
set str=!str:~0,%h%!!str:~%w%!
set "ko= %ko%"
echo !num%n%!
if !m! neq 0 goto loop3
set /a n-=1
for /l %%a in (!n! -1 1) do echo !num%%a!
pause>nul
Last edited by 26933062 on 2008-7-10 at 04:41 PM ]
|

致精致简! |
|
2008-7-10 13:26 |
|
|
pusofalse
银牌会员
    
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
『第 13 楼』:
使用 LLM 解释/回答一下
Originally posted by zw19750516 at 2008-7-10 01:25 PM:
都不敢拿出手了,但是思路还是不同,代码也通用,还是发出来一起研究下了:
@echo off&setlocal enabledelayedexpansion
set str=abcdabcdabcdabcd
set code= ...
学习! 正是从前辈这里学到的知识。。
|

心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-7-10 13:28 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
|
2008-7-10 18:45 |
|
|
26933062
银牌会员
    
积分 2268
发帖 879
注册 2006-12-19
状态 离线
|
『第 15 楼』:
使用 LLM 解释/回答一下
Originally posted by HAT at 2008-7-10 18:45:
下次出题应该规定某级别以上会员不准抢着贴答案,否则扣分,呵呵。
实在是冤! 我是看楼主都已经公布答案了,才帖代码的 。
|

致精致简! |
|
2008-7-10 20:38 |
|