약 1 년 전에 2015 년 12 월 31 일에 다음과 같은 아이디어가있었습니다.
손잡이 기꺼이 수집 자 로부터 PPCG의 커뮤니티 1 년 안전을 유지했다.
엄청나게 74 명이 참여하여 놀랄만 한 74 개의 인쇄 가능한 ASCII 문자를 사용할 수 있습니다!
제출 된 순서대로 2016 타임 캡슐 문자열의 74 자입니다.
H@~*^)$.`~+1A|Q)p~`\Z!IQ~e:O.~@``#|9@)Tf\eT`=(!``|`~!y!`) Q~$x.4|m4~~&!L{%
다음은 2016 타임 캡슐 문자열의 74 자 (ASCII 순서)입니다 (앞의 공백).
!!!!!#$$%&())))*+...1449:=@@@AHILOQQQTTZ\\^`````````eefmpxy{||||~~~~~~~~~
작업하기에는 많은 것이 아니지만 여기에서 우리는 도전을 좋아합니다.
도전
타임 캡슐 문자열에서 어떤 언어가 "최고"인지 판단하기 위해서는 각각에 74 개의 타임 캡슐 문자의 부분 집합을 사용해야하는 난이도가 증가하는 6 개의 (20 1 6 ) 과제가 있습니다.
6 개의 뚜렷한 도전이 있으면 더 많은 언어가 경쟁 할 수 있지만 최고의 언어 만이 모든 언어에 대답하고 높은 점수를 얻을 수 있습니다.
채점 :
- 각 챌린지는 사용 된 문자 수에 따라 0에서 74까지의 점수를받습니다.
- 점수가 높을수록 좋습니다.
- 당신의 언어가 도전을 완료 할 수 없다면, 그 도전에 대한 점수는 0입니다.
- 과제의 비어 있지 않은 부분 집합이 완료 될 수 있습니다.
- 최종 점수는 6 가지 도전 과제의 점수 합계입니다.
- 가능한 최고의 최종 점수는 6 × 74 또는 444 입니다.
도전 과제
1. 달리다
언어 코드가 처음에 실행될 수 없다면 아무것도 할 수 없습니다.
컴파일 타임 또는 런타임 오류없이 실행 / 실행되는 가능한 가장 긴 전체 프로그램 (74 시간 캡슐 문자 만 사용, 기억하십시오)을 작성하십시오.
프로그램이 무엇을하든 상관없이, 입력 / 출력이 있거나 무한 루프에 들어가더라도 상관없이 오류없이 실행되는 것만 중요합니다. (잘못된 사용자 입력으로 인한 오류와 마찬가지로 경고는 정상입니다.)
주석이 허용되므로 이처럼 간단 할 수 있습니다
#H@~*^)$.`~+1A|Q)p~`\Z!IQ~e:O.~@``|9@)Tf\eT`=(!``|`~!y!`) Q~$x.4|m4~~&!L{%
파이썬에서 74 점을 얻었습니다.
(이것이 당신의 언어가 완수 할 수있는 유일한 도전이라면 대답을 두려워하지 말고 많은 표를 기대하지 마십시오.)
점수 = 프로그램 길이 (프로그램이 길수록 좋음)
2. I / O
입력 또는 출력 형식이없는 언어는 실행할 수없는 언어만큼이나 쓸모가 없습니다.
(0x33)에서 (0x7D)까지 의 인쇄 가능한 ASCII 문자가 주어지면 인쇄 가능한 ASCII 문자를 전후로 출력하십시오.!
}
출력은 길이가 2 인 문자열 또는 목록이거나 공백 또는 줄 바꿈으로 구분 된 문자 일 수 있습니다.
예를 들어 입력이 }
출력 인 경우 |~
또는 ["|", "~"]
또는 | ~
또는 일 수 있습니다 |\n~
.
마찬가지로 "
위한 출력 !
과 AC
의 출력이다 B
.
점수 = 74-프로그램 길이 (프로그램이 짧을수록 좋음)
3. 분기 성
조건은 종종 튜링 완전성 에 대한 요구 사항이며, 종종 유용한 언어에 대한 요구 사항입니다.
는 십진수로 종료되면, 양의 정수를 감안할 때 16
다음 변경 6
(A)에 7
출력 결과; 그렇지 않으면 입력을 변경하지 않고 출력하십시오. 원하는 경우 입력 / 출력에 문자열을 사용할 수 있습니다.
예 :
2016 -> 2017
16 -> 17
116 -> 117
1616 -> 1617
6 -> 6
15 -> 15
17 -> 17
106 -> 106
2106 -> 2106
점수 = 74-프로그램 길이 (프로그램이 짧을수록 좋음)
4. 루프 성
루프를 수행 할 수없는 언어는 반복적 인 코드를 생성하므로 지루한 프로그래밍 작업을 잠시 수행해야합니다.
양의 정수가 주어지면, 인쇄 가능한 두 개의 ASCII 문자 사이에서 번갈아 나타나는 동심의 작은 사각형 패턴으로 채워진 측면 길이의 ASCII 아트 사각형을 출력하십시오 . 서로 다른 입력에 대해 동일한 두 문자 일 필요는 없습니다.
예를 들면 다음과 같습니다.
1 <- input
X <- output
2
XX
XX
3
XXX
X-X
XXX
4
XXXX
X--X
X--X
XXXX
5
YYYYY
Y...Y
Y.Y.Y
Y...Y
YYYYY
6
XXXXXX
X----X
X-XX-X
X-XX-X
X----X
XXXXXX
7
ZZZZZZZ
Z-----Z
Z-ZZZ-Z
Z-Z-Z-Z
Z-ZZZ-Z
Z-----Z
ZZZZZZZ
점수 = 74-프로그램 길이 (프로그램이 짧을수록 좋음)
5. 수학
숫자와 수학에 좋지 않은 언어는 인문학 전공에도 적합 할 수 있습니다.
입력을 취하지 않고 2016 의 72 정수 제수를 양의 값과 음의 순서로 출력하십시오. 출력은 합리적인 방식으로 문자열 또는 목록으로 형식화 될 수 있습니다.
예:
-1, -2, -3, -4, -6, -7, -8, -9, -12, -14, -16, -18, -21, -24, -28, -32, -36, -42, -48, -56, -63, -72, -84, -96, -112, -126, -144, -168, -224, -252, -288, -336, -504, -672, -1008, -2016, 1, 2, 3, 4, 6, 7, 8, 9, 12, 14, 16, 18, 21, 24, 28, 32, 36, 42, 48, 56, 63, 72, 84, 96, 112, 126, 144, 168, 224, 252, 288, 336, 504, 672, 1008, 2016
점수 = 74-프로그램 길이 (프로그램이 짧을수록 좋음)
6. 밀교
(아니요, 아닙니다 .) PPCG의 우리는 난해한 것들을 좋아 합니다 . 그리고 quines 는 그 좋은 예입니다.
일반적인 quine 규칙 에 따라 가능한 가장 긴 quine을 작성하십시오 . quine은 입력을받지 않고 자체적으로 출력되는 프로그램입니다.
점수 = 프로그램 길이 (프로그램이 길수록 좋음)
특정 규칙
- 6 가지 과제 각각에서 프로그램은 원하는 방식으로 재 배열 된 74 개의 타임 캡슐 문자의 하위 집합이어야합니다 . 빈 하위 집합이거나 부적절한 하위 집합 일 수 있으므로 각 프로그램은 0에서 74 자까지 가능합니다.
- 일부 언어는 이것을 요구하거나 쉽게 피할 수 없기 때문에 입 / 출력 / 코드의 끝에있는 단일 후행 줄 바꿈은 아무 데나 괜찮습니다.
- 달리 명시되지 않는 한, 각 챌린지는 기본 설정 에 따라 기능 또는 전체 프로그램으로 완료 될 수 있습니다 .
- 모든 과제는 동일한 언어로 완료해야합니다.
- Earth 어딘가에서 2017 년 이전에 작성된 언어 (또는 언어 버전)를 사용해야합니다 .
- 타임 캡슐에 문자를 추가했는지 여부에 관계없이 누구나 대답 할 수 있습니다.
2016 타임 캡슐 캐릭터를 자유롭게 사용하십시오.
6×74 or 444
것을 어떻게 든 다르게 행동 비어있는 프로그램을 의미하는 것처럼, 수 없습니다. 따라서 442가 실제 최소값이므로 3 개의 입력 프로그램 중 2 개에 문자가 있음을 의미합니다.