도전 과제 : 가능한 적은 문자를 사용하여 다음 출력을 생성하십시오.
_ _ _ _ _ _ _
| | | | ___| | | ___ __ _____ _ __| | __| | |
| |_| |/ _ \ | |/ _ \ \ \ /\ / / _ \| '__| |/ _` | |
| _ | __/ | | (_) | \ V V / (_) | | | | (_| |_|
|_| |_|\___|_|_|\___( ) \_/\_/ \___/|_| |_|\__,_(_)
|/
규칙 및 제한 사항 :
FIGLet 또는 기타 유사한 도구를 사용할 수 없습니다 . (그렇지 않으면
figlet Hello, world!
사소하고 매우 탁월한 솔루션이 될 것입니다.)프로그램은 인쇄 가능한 ASCII 문자 (특히 코드 포인트 9 (TAB), 10 (LF) 및 32 – 126) 로 구성되어야합니다 . 언어 / OS에 CRLF 줄 바꿈이 필요한 경우 일반 LF 대신 사용할 수 있습니다. 예 유감스럽게도 구문의 일부로 비 ASCII 문자 (또는 텍스트가 아닌 데이터)가 필요한 언어는 실격입니다.
출력은 위의 예와 정확히 같아야합니다. 그러나 원하는 경우 출력 주위에 추가 공백을 포함시킬 수 있습니다. 8 자 탭 간격 (또는 선택한 플랫폼의 기본 설정이 일관된 경우 기본 설정)을 가정 할 수 있습니다.
추신. 파를 설정하기 위해 199 문자 펄 솔루션을 생각해 냈습니다. 그러나 누군가가 독립적으로 게시 할 경우를 대비하여 아직 게시하지는 않습니다. (또한 치즈 맛이 있습니다.) 물론 이것이 더 길더라도 자신의 솔루션을 게시하는 것을 방해해서는 안됩니다.
업데이트 : 이제 한이 한 문자로 이겼습니다. 치즈 199 문자 펄 솔루션은 다음과 같습니다.
use Compress'Zlib;say uncompress unpack u,'M>-I]BT$*`S$,`^]YQ=R:0,&_Z<DP?8@?WVQJ]E2J"%E$$@)R(/(/MCJ*\U!OM`Z#=5`4Y>6M=L\L%DMP&DB0V.4GQL&OOGB$4:%`4TT4!R8O-Z(^BTZWNV?>F86K:9+""-35*-LNC:T^D:_$#%^`";"DD0'
압축 된 텍스트와 다른 몇 가지 사소한 골프 트릭 에 base64 대신 uuencoding 을 사용했다는 점을 제외하면 DC 솔루션 (및 다양한 언어의 다른 모든 zlib / gzip 기반 솔루션)과 매우 유사합니다 .
업데이트 2 : 공식적으로 승자를 수락해야 할 때라고 생각합니다. 첫 번째 장소로 이동 konsolenfreddy 그러나 당신이 문자를 카운트하기 때문에, 그것은,의 PHP 코드 입니다 짧은까지 제출했다. 실제로, 199-char Perl 코드에서 최적화 된 DEFLATE 스트림과 결합하면 훨씬 짧은 176-char 솔루션을 얻을 수 있습니다.
<?=gzinflate(base64_decode("fYtBCgMxDAPvecXcmkDBv+nJMH2IH99savZUqghZRBICciDyD7Y6ivNQbwOg3VQFOXlrXbPLBZLcBpIkNjlJ8bBr754hFGhQFNNFAcmLzeiPotOt7tn3plq2mSwgjU1SjbLo2tPpGvxAxfgA"));
그러나 한은 사전 작성된 압축 해제 도구를 사용하지 않고 가까이 다가온 것에 대해 특별한 명예 언급이 필요하다고 생각합니다 . 모두에게 축하의 인사를 전하며 새해 복 많이 받으세요!