여기에 베데스다 팬이라면? 어쩌면 당신은 Obsidian Entertainment를 선호합니까? 글쎄요, 만약 당신이 다음 그림보다 그 것들 중 하나라면 비교적 친숙 할 것입니다.
나는 다소 독특한 ASCII-Art 챌린지를 준비 할 자유를 얻었으므로 여기에 내가 무엇을 할 것인지에 대한 첫 번째 단서가 있습니다.
_____________________________________________________
/ \
| _____________________________________________ |
| | | |
| | 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.
| |_____________________________________________| |
| |
\_______________________________________________________/
\_______________________________________/
이 예제는 수동으로 제작되었으므로 배포가 무작위 화되지 않았습니다. 죄송합니다.
이것은 code-golf 이며 가장 낮은 바이트 수는 허용 된 승자가됩니다. 총 250 REP에 대한 답변이 제출되지 않은 경우 3 일 후에 보상이 적용됩니다.
NAMES
번째 글 머리 기호의 의미? "이 암호는 중요하지 않지만 모든 암호 의 길이는 동일 해야합니다 . "또는 " l의 모든 암호는 길이가 같아야합니다. "? 그것은 단지 장님이 될 수도 있지만 (다시!) RACES
두 출력에서 볼 수 없습니다 -암호를 사용하지 않을 가능성이 있음을 의미합니까? 가 Math.random
이 문제의 목적을 충분히 무작위 (균등)?