다재다능한 정수 프린터를 만드는 것은 훌륭하지만 모두 다른 숫자를 인쇄하는 단일 코드를 작성하는 것은 번거 롭습니다. 숫자를 출력하는 스크립트를 만드는 것이 쉽지 않습니까? 다음 숫자를 얻는 새로운 스크립트를 제공합니까?
도전:
단일 정수 N
와 실행 코드 를 출력하는 코드를 작성하십시오 . 다음 코드 N+1
와 출력 할 수있는 코드가 출력되어야 합니다 N+2
. 에 도달 할 때까지이 경로를 계속하십시오 N = 15
. (마지막 인쇄 번호는 15 여야합니다).
규칙 :
- 입력이 없습니다 (입력이 비어 있다고 가정).
- 전체 프로그램 또는 기능 또는 기타 편리한 형식이 허용됩니다.
- 첫 번째 코드가 출력되어야합니다
1
. - 선행 0을 출력 할 수 없습니다. 즉 당신은 인쇄 할 수 없습니다
01
위해1
. - 출력 형식이어야합니다
N, Code_for_N+1
. 출력은 쉼표와 단일 공백으로 구분됩니다. 에 대한 코드N+1
에는 따옴표가 없습니다.N , Code_for_N+1
허용되지 않습니다 (쉼표 앞에 공백). 후행 줄 바꿈은 괜찮습니다. - 출력의 첫 문자는 숫자 여야합니다. (앞 공백이 없거나
ans = N
). - 인쇄 된 숫자는 다음 코드의 일부가 아니어야합니다 (코드에는이 숫자가 포함될 수 있지만 출력 번호는 코드의 일부로 사용할 수 없습니다)
- 예 :의 출력
N=2
은 다음과 같습니다2, printer 2
.. 이 경우에printer 2
대한 코드입니다N=3
. 전체 출력2, printer 2
을 코드로 사용할 수 없습니다N=3
.
- 예 :의 출력
- 스크립트는 다른 언어로되어있을 수 있습니다
- 데이터 유형은 관련이 없지만 (숫자는 문자열 일 수 있음), 따옴표 (괄호, 괄호 등)로 둘러 쌀 수 없습니다.
- 출력 된 코드가있는 경우
N=15
인쇄하거나STOP!
(보너스 참조) 아무 것도 인쇄하지 않아야합니다 (공백이나 줄 바꿈도 포함하지 않음).- 에 대한 코드가
N=15
충돌 할 수 없습니다 (그러나 STDERR로 출력하는 것은 정상입니다). N=15
인쇄용 출력 코드16
또는 기타 사항 (보너스 제외)의 경우 자격이 박탈됩니다 .
- 에 대한 코드가
- 내장 quine 연산자는 허용되지 않습니다.
- 파일 시스템을 통해 소스 파일에 액세스 할 수 없습니다.
보너스:
15를 인쇄하는 코드가 " STOP!
" 를 인쇄하는 코드도 생성하는 경우 -10 바이트
Python 구문을 사용한 예 : (이것은 1에서 15가 아닌 선택된 정수에 대해서만 작동합니다.)
N = 1
print "1, print 2"
1, print 2
---
N = 15
print 15
15
---
N = 15 (Qualifies for the -10 bytes bonus)
print "15, print 'STOP!'"
15, print 'STOP!'
print 'STOP!'
STOP!
----
N = 15 (Qualifies for the -10 bytes bonus)
print "15, disp('STOP!')"
15, disp('STOP!') (disp('STOP!') outputs STOP! in MATLAB)
----
N = 15 (This one is not OK. The submission is disqualified)
print "15, print 16"
15, print 16
표준 골프 규칙이 적용됩니다! 바이트 단위의 가장 작은 코드 (N = 1)가 승리합니다!
14, print(14+1)
있습니까?
f=>f+""
무효가 될까요? (f+""
함수의 구성 코드를 반환합니다.)