당신은 주어진하면 해당 프로그램 또는 기능을 작성해야 비어 있지 않은 문자열 S 의 N 인쇄 가능한 ASCII 문자 † , 종료 코드로 종료하는 프로그램 출력 C , C가 에 위치 0에서 ASCII 코드 점이다 S를 . 작성하는이 프로그램은 프로그램 P를 추가로 출력하므로 실행시 종료 코드 C ' 로 종료됩니다 . 여기서 C' 는 S의 1 위치에있는 ASCII 코드 포인트 입니다. 프로그램 P 는 다른 프로그램 P '를 출력 할 것이다 . 이 프로세스는 S에 문자가 남지 않을 때까지 반복됩니다.. 이 작업이 끝나면 아무 것도 출력하지 않고 선택적 개행 문자를 따라야합니다. 종료 코드 0으로 종료해야합니다.
† 사이의 문자 0x20
와 0x7e
포함.
몇 가지 규칙 :
- 자체 수정 프로그램은 허용되지 않습니다. 소스를 STDOUT으로 출력해야합니다 (또는 초기에 값을 반환).
- 자신의 소스 코드를 읽을 수 없습니다.
바이트 단위의 가장 짧은 프로그램이 이길 것입니다.
일부 기본적인 테스트의 경우이 루비 스크립트를 사용할 수 있습니다. (첫 번째 인수는 스크립트를 호출하는 방식이고, 두 번째 인수는 프로그램이며, 세 번째 인수는 입력 문자열입니다.)
가상의 예
프로그램이라고 가정하십시오 FOO
. 문자열 "ABC"가 주어지면을 출력 BARA
합니다. 이 프로그램은 코드 65
와 출력으로 종료됩니다 BARB
. 이것은 차례로 코드 66
와 출력 으로 종료됩니다 BARC
. 이 프로그램은 코드 67
와 출력으로 종료됩니다 BAR!
. 아무것도 출력하지 않고 code로 종료됩니다 0
.
33 throw
임의의 숫자를 던지는 것과 같은 일을 할 수 있습니다 . OS 수준에 음수를 사용하고 오프셋은 -512입니다. 많이 Idk,하지만 내가 찾고 있어요 : complang.tuwien.ac.at/forth/gforth/Docs-html/…
0
성공입니다. tio.run/nexus/…