这里有人是贝塞斯达的忠实粉丝吗?也许您更喜欢黑曜石娱乐公司?好吧,如果您属于上述两种情况之一,那么您应该相对熟悉下图。
我已经准备了一个非常独特的ASCII艺术挑战赛,因此这是我要做什么的第一个线索:
_____________________________________________________
/ \
| _____________________________________________ |
| | | |
| | Welcome to ROBCO Industries (TM) Termlink | |
| | Password Required | |
| | Attempts Remaining: | |
| | | |
| | 0x01 | 0x0D | |
| | 0x02 | 0x0E | |
| | 0x03 | 0x0F | |
| | 0x04 | 0x10 | |
| | 0x05 | 0x11 | |
| | 0x06 | 0x12 | |
| | 0x07 | 0x13 | |
| | 0x08 | 0x14 | |
| | 0x09 | 0x15 | |
| | 0x0A | 0x16 | |
| | 0x0B | 0x17 | |
| | 0x0C | 0x18 | |
| |_____________________________________________| |
| |
\_______________________________________________________/
\_______________________________________/
这是纯ASCII RobCo Fallout终端设计的非常基本(空白)模板,您的工作将是:
- 首先,生成此模板。
- 然后,给出一个字符串列表
l
和一个数字0 <= n <= 4
以填充它!
辐射黑客终端的两个动态部分是:
尝试次数
- 您剩余的尝试次数(以空格分隔的框表示)。
- 出于此挑战的目的,您将使用
X
而不是■
。
- 出于此挑战的目的,您将使用
密码
- 由定义的密码
l
中插有随机可打印的ASCII符号。 - 如示例所示,密码可以包装多行(
NAMES
)。 - 终端屏幕中的所有密码都应有相等的机会出现在任何地方。
- 可以预期所有密码的长度相等,尽管没关系。
- 可用于分隔密码的符号列表为:
!"#$%&'()*+/:;<=>?@[\]^_{|}
。 - 输入的所有密码
l
的长度必须相等。 - 密码必须在两个列之间都具有互换性。
- 这也适用于行,但仅适用于更高的字节地址(0x18-> 0x01无效)。
- 两侧的密码显示空间为15宽(两侧都有一个空间)。
- 您可以假设输入的单词
l
不会超过此长度。
- 您可以假设输入的单词
- 密码仅按字母顺序,仅表示字母。
例:
l = ["SMART","ENACT","SWORE","PITYS","SMELL","CARTS","RACES"]
, n = 4
_____________________________________________________
/ \
| _____________________________________________ |
| | | |
| | Welcome to ROBCO Industries (TM) Termlink | |
| | Password Required | |
| | Attempts Remaining: X X X X | | # N = 4 drives these X's.
| | | |
| | 0x01 $?_/%$ENACT||"} | 0x0D TYS"_'$\#|^%&{} | |
| | 0x02 }:!*@{/_<"[]#>; | 0x0E #{!"^&\]'|}_[$% | |
| | 0x03 $%&'()*+/:;<\_' | 0x0F }|[(%SMELL/_$@( | |
| | 0x04 ^SMART(!@$*'^_@ | 0x10 []_#!"{|}'%$\&^ | |
| | 0x05 (*@#%}*(!%)^(_! | 0x11 %$}[!\#'^&_]{|" | |
| | 0x06 $%&'()*+/:;<_@) | 0x12 \SWORE|%'_!}\^" | |
| | 0x07 "/')=*%!&>#<:$+ | 0x13 ^{['&$|!_]%\"#} | |
| | 0x08 ;'*$&"(<%!#)RAC | 0x14 ']!|^#[$"_\}&{% | |
| | 0x09 ES:($&';%#+"<*/ | 0x15 @)($!CARTS*!@$_ | |
| | 0x0A ;'*$&"(<%!#)/+: | 0x16 !#%${"'}&[]^|_\ | |
| | 0x0B |'_!}$\%["#^{&] | 0x17 ]"_#$&}^%[{|\'! | |
| | 0x0C #{!"^&\]'|}_[PI | 0x18 _![&#{$%\^'|}"] | | # Notice how PITYS wrapped.
| |_____________________________________________| |
| |
\_______________________________________________________/
\_______________________________________/
如果n = 2
在同一示例上:
_____________________________________________________
/ \
| _____________________________________________ |
| | | |
| | Welcome to ROBCO Industries (TM) Termlink | |
| | Password Required | |
| | Attempts Remaining: X X | | # N = 2 drives these X's.
| | | |
| | 0x01 $?_/%$ENACT||"} | 0x0D TYS"_'$\#|^%&{} | |
| | 0x02 }:!*@{/_<"[]#>; | 0x0E #{!"^&\]'|}_[$% | |
| | 0x03 $%&'()*+/:;<\_' | 0x0F }|[(%SMELL/_$@( | |
| | 0x04 ^SMART(!@$*'^_@ | 0x10 []_#!"{|}'%$\&^ | |
| | 0x05 (*@#%}*(!%)^(_! | 0x11 %$}[!\#'^&_]{|" | |
| | 0x06 $%&'()*+/:;<_@) | 0x12 \SWORE|%'_!}\^" | |
| | 0x07 "/')=*%!&>#<:$+ | 0x13 ^{['&$|!_]%\"#} | |
| | 0x08 ;'*$&"(<%!#)RAC | 0x14 ']!|^#[$"_\}&{% | |
| | 0x09 ES:($&';%#+"<*/ | 0x15 @)($!CARTS*!@$_ | |
| | 0x0A ;'*$&"(<%!#)/+: | 0x16 !#%${"'}&[]^|_\ | |
| | 0x0B |'_!}$\%["#^{&] | 0x17 ]"_#$&}^%[{|\'! | |
| | 0x0C #{!"^&\]'|}_[PI | 0x18 _![&#{$%\^'|}"] | | # Notice how PITYS wrapped.
| |_____________________________________________| |
| |
\_______________________________________________________/
\_______________________________________/
这些示例是人工制作的,因此分发不是随机的,抱歉。
这是代码高尔夫球,最低字节数将被接受。如果三天后仍未提交250 REP的答案,我将对此给予奖励。
快!3天没有人回答!(开玩笑)。这是我最喜欢的ascii艺术挑战。
—
nmjcman101
@ nmjcman101您最近的最爱是什么?
—
魔术八达通缸
什么是
—
毛茸茸的
NAMES
在第二个项目符号是什么意思?“ 可以期望所有密码的长度相等,尽管这无关紧要。 ”或“ l中的所有密码的长度必须相等。 ”?可能只是我盲目(再次!),但我都没有看到RACES
任何输出-我们是否应该认为这意味着应该有可能不使用密码?是Math.random
(及等价物)足够随机对这一挑战的目的是什么?
两个密码之间是否必须有非字母数字的间隔符,或者如果它们彼此相邻生成(不重叠),是否可以?
—
HyperNeutrino
密码是否需要能够从0x18到0x01正确地换行?
—
乔纳森·艾伦