태그 보관물: code-challenge

code-challenge

자신의 언어 코드 선택 않습니다. 명확히하기 위해

16×16 인쇄 가능 ASCII 문자 (코드 포인트 0x20 ~ 0x7E)의 격자를 보자. 왼쪽 상단에서 오른쪽 하단으로 30 개에서 15 개의 경로가 있으며 다음 예제와 같이 직교 이동 만합니다.

##..............
.#..............
.######.........
......##........
.......##.......
........#.......
........#.......
........#.......
........###.....
..........###...
............#...
............####
...............#
...............#
...............#

이러한 각 경로는 정확히 31 자로 구성됩니다. 각 문자는 31 개의 대각 대각선에 서로 다릅니다.

0123456789ABCDEF
123456789ABCDEFG
23456789ABCDEFGH
3456789ABCDEFGHI
456789ABCDEFGHIJ
56789ABCDEFGHIJK
6789ABCDEFGHIJKL
789ABCDEFGHIJKLM
89ABCDEFGHIJKLMN
9ABCDEFGHIJKLMNO
ABCDEFGHIJKLMNOP
BCDEFGHIJKLMNOPQ
CDEFGHIJKLMNOPQR
DEFGHIJKLMNOPQRS
EFGHIJKLMNOPQRST
FGHIJKLMNOPQRSTU

이것은 예제 그리드가 아닙니다. 31 개의 대각 대각선을 시각화 한 것입니다.

반 대각선에 동일한 문자가 두 번 포함되어 있지 않으면 대각선으로 고유 한 격자를 호출합니다 . 그리드에이 속성이 있으면 두 경로에 동일한 문자열이 포함되지 않습니다. 명확히하기 위해 시각화 자체는 기본적으로 대각선 고유 의 반대 입니다.

도전

대각선으로 고유 한 16×16 격자를 디자인하여 가능한 많은 경로가 가능한 Jabberwocky한 많은 언어로 STDOUT (선택적 후행 줄 바꿈)으로 인쇄 하는 유효한 코드가 되도록하십시오. 각 코드는 전체 프로그램이거나 return 문이없는 매개 변수가없는 함수의 본문 일 수 있습니다 ( 일부 보일러 플레이트 함수 / 클래스 / 네임 스페이스에 코드 가 필요한 언어는 권장하지 않습니다 ).

참고 : 간단하게하기 위해 Ypnypn처럼 사용되지 않은 셀에 예약 된 문자를 사용할 수 있습니다 .

유효한 각 경로마다 유효한 하나의 프로그래밍 언어 를 명확하게 명시하십시오 .

우승자는 위의 목록에 포함 된 가장 많은 언어로 제출 된 것입니다. (또는, 계산하려는 각 언어에 대해 해당 언어에 유효한 하나의 경로를 표시하지만 두 언어에 대한 경로는 계산하지 않아야합니다.)

동점 일 경우, 유효한 경로에 포함 되지 않은 그리드 셀을 세십시오 . 미사용 세포가 적습니다. 여전히 동점 이 있다면 , 가장 많은 (순) 투표로 답변을 수락합니다.

검증 스크립트

그리드가 대각선으로 고유하다는 것을 검증하는 데 사용할 수있는 작은 CJam 스 니펫을 빠르게 정리했습니다.

  1. 온라인 CJam 통역사로 이동 하십시오 .
  2. 다음 코드를 붙여 넣기

    l:A;
    qN/W%A16**33/z{A-__|=}%:*"D""Not d"?"iagonally unique"
    
  3. 입력 필드에 첫 번째 줄에 예약 문자를 입력하고 (예약 문자를 고소하지 않으면 사용하지 않는 문자 사용) 2-17 행의 그리드를 입력하십시오. 예를 들어 Ypnypn의 답변 :

    ~
     pr~~~~~~~~~~~~~
     tin~~~~~~~~~~~~
    ~ypt(~~~~~~~~~~~
    ~~ef(~~~~~~~~~~~
    ~~  "J~~~~~~~~~~
    ~~~~~ab~~~~~~~~~
    ~~~~~~be~~~~~~~~
    ~~~~~~~rwo~~~~~~
    ~~~~~~~~~ck~~~~~
    ~~~~~~~~~~y~~~~~
    ~~~~~~~~~~\n~~~~
    ~~~~~~~~~~~")) ~
    ~~~~~~~~~~~  ;
    ~~~~~~~~~~~~~~~
    ~~~~~~~~~~~~~~~
    ~~~~~~~~~~~~~~~
    
  4. 운영.

버그가 있다고 생각되면 알려주십시오.



답변

30 33 35 언어

예약 된 캐릭터 : ~

 println!~~~~~~~
 puts    (1,~~~~
    echo   '~~~~
"cWprintfn"Ja~~~
Eork~~~;'Jabbe~~
\ui)K00~~~~~br~~
]tteL~0~~~~~ew~~
]<~ln(0~~~~~ro~~
`<~~~ 0~~~~~wc~~
m"~~~ "~~~~~ok~~
rJ~~~'J~~~~~cy~~
j"<< "a~~~~~k'..
^~~~~~bberwoy");
f~~~~~~~~~~c'  ;
t~~~~~~~~~~ky"
XX"););  5f+');

언어 :

01. Rust        | println! (  "Jabberwocky") ;  |
02. Groovy      | println     "Jabberwocky"     |
03. E           | println  (  "Jabberwocky")    |
04. Swift       | println  (  "Jabberwocky") ;  |
05. Julia       | println  (  "Jabberwocky");;  |
06. Processing  | println  (  "Jabberwocky")  ; |
07. Falcon      | printl   (  "Jabberwocky")    |
08. ALGOL 68    | print    (  "Jabberwocky")    |
09. Vala        | print    (  "Jabberwocky") ;  |
10. Pawn        | print    (  "Jabberwocky");;  |
11. Batsh       | print    (  "Jabberwocky")  ; |
12. freeBASIC   | print       "Jabberwocky"     |
13. Rebol       | print       "Jabberwocky"  ;  |
14. Red         | print       "Jabberwocky"   ; |
15. AWK         | print       'Jabberwocky'     |
16. Perl        | print       'Jabberwocky'  ;  |
17. bc          | print       'Jabberwocky'   ; |
18. Euphoria    |  puts    (1,"Jabberwocky")    |
19. C           |  puts    (  "Jabberwocky") ;  |
20. Tcl         |  puts       "Jabberwocky"     |
21. Ruby        |  puts       'Jabberwocky'     |
22. Zsh         |      echo   "Jabberwocky"     |
23. Bash        |      echo   "Jabberwocky"  ;  |
24. tcsh        |      echo   "Jabberwocky"   ; |
25. PHP         |      echo   'Jabberwocky'     |
26. Fish        |      echo   'Jabberwocky'  ;  |
27. Dash        |      echo   'Jabberwocky'   ; |
28. F#          |      printfn"Jabberwocky"   ; |
29. C++         |    cout<<"J"<< "abberwocky" ; |
30. D           |     Writeln(  'Jabberwocky'); |
31. Pascal      |     WriteLn(  'Jabberwocky'); |
32. Delphi      |     Writeln(  "Jabberwocky"); |
33. GolfScript  |      print;'Jabberwocky'..;;  |
34. CJam        |   "E\]]`mrj^ftXX"););  5f+'); |
35. Pyth        |      pk)K00000"Jabberwocky"   |

(사용자 23013 덕분에 Pyth와 CJam)


답변

17 개 언어

다음 .은 예약 문자로 사용 되는 그리드입니다 .

 prin...........
 utstln!........
       (1,......
<?echo    ".....
.........'Jab...
............b...
............e...
............r...
............w...
............o...
............c...
............k...
............y"..
............' ).
.............  ;
..............

다음은 언어와 경로입니다 (수직 막대 무시).

01. Rust        | println!(   "Jabberwocky" ) ; |
02. Swift       | println (   "Jabberwocky" ) ; |
03. Scala       | println (   "Jabberwocky" )   |
04. Falcon      | printl  (   "Jabberwocky" )   |
05. Vala        | print   (   "Jabberwocky" ) ; |
06. Lua         | print   (   'Jabberwocky' ) ; |
07. ALGOL 68    | print   (   "Jabberwocky" )   |
08. Dart        | print   (   'Jabberwocky' )   |
09. Rebol       | print       "Jabberwocky"   ; |
10. Perl        | print       'Jabberwocky'   ; |
11. AWK         | print       "Jabberwocky"     |
12. Euphoria    | puts    (1, "Jabberwocky" )   |
13. C           | puts    (   "Jabberwocky" ) ; |
14. Tcl         | puts        "Jabberwocky"     |
15. Ruby        | puts        'Jabberwocky'     |
16. Bash        |     echo    "Jabberwocky"     |
17. PHP         |     echo    "Jabberwocky"   ; |

나는 그들 모두를 테스트 할 수 없었습니다, 그래서 뭔가 작동하지 않는 경우 알려주십시오.


답변

18 개 언어 이상

예약 문자 : ~.

         "~~~~~~
12345678 "~~~~~~
12345678 "~~~~~~
12345678 "~~~~~~
1234567: ea~~~~~
1234567: c;~~~~~
1234567: hL~~~~~
1234567: o'~~~~~
1234567:  Jab~~~
1234567:?""""~~~
~~~~~~~~~Jabberw
~~~~~~~~~~~~~~~o
~~~~~~~~~~~~~~~c
~~~~~~~~~~~~~~~k
~~~~~~~~~~~~~~~y
~~~~~~~~~~~~~~~"

언어 :

CJam                             |             ea;L'J"abberwocky"|
GolfScript                       |              cho "Jabberwocky"|
Bc                               |                  "Jabberwocky"|
Bash                             |         """"echo J"abberwocky"|
Zsh                              |           ""echo J"abberwocky"|
Fish                             |             echo J"abberwocky"|
Tcsh                             |         """"echo Ja"bberwocky"|
Dash                             |           ""echo Ja"bberwocky"|
Ksh                              |             echo Ja"bberwocky"|
Mksh                             |         """"echo Jab"berwocky"|
Yash                             |           ""echo Jab"berwocky"|
Sash                             |             echo Jab"berwocky"|
Posh                             |         """"echo "Jabberwocky"|
Csh                              |           ""echo "Jabberwocky"|
PHP                              |             echo "Jabberwocky"|

과…

FreeBasic                        |                 ?"Jabberwocky"|
QBasic                           | 12345678        ?"Jabberwocky"|
QB64                             | 123456788       ?"Jabberwocky"|

많은이 있어야 더 기본 방언 작동합니다. 하지만 아직 테스트 할 시간이 없습니다.


답변