ถาม:ผลิตผลลัพธ์ต่อไปนี้โดยใช้ตัวอักษรให้น้อยที่สุด:
_ _ _ _ _ _ _
| | | | ___| | | ___ __ _____ _ __| | __| | |
| |_| |/ _ \ | |/ _ \ \ \ /\ / / _ \| '__| |/ _` | |
| _ | __/ | | (_) | \ V V / (_) | | | | (_| |_|
|_| |_|\___|_|_|\___( ) \_/\_/ \___/|_| |_|\__,_(_)
|/
กฎและข้อ จำกัด :
คุณไม่สามารถใช้FIGLetหรือเครื่องมือที่คล้ายกัน (มิฉะนั้น
figlet Hello, world!
จะเป็นวิธีแก้ปัญหาที่ไม่สำคัญและสวยมาก)โปรแกรมของคุณต้องประกอบด้วยอักขระ ASCII ที่พิมพ์ได้ทั้งหมด- โดยเฉพาะ, รหัสจุด 9 (TAB), 10 (LF) และ 32 - 126 (หากภาษา / ระบบปฏิบัติการของคุณต้องมีตัวแบ่งบรรทัด CRLF คุณสามารถใช้เหล่านั้นแทน LF ธรรมดา) สิ่งนี้น่าเสียใจที่ตัดสิทธิ์ภาษาใด ๆ ที่ต้องมีอักขระที่ไม่ใช่ ASCII (หรือข้อมูลที่ไม่ใช่ข้อความ) เป็นส่วนหนึ่งของไวยากรณ์
ผลลัพธ์จะต้องดูเหมือนกับตัวอย่างด้านบน อย่างไรก็ตามคุณอาจรวมช่องว่างพิเศษรอบผลลัพธ์ถ้าคุณต้องการ คุณอาจสมมติระยะห่างแท็บ 8 ตัวอักษร(หรือการตั้งค่าเริ่มต้นของแพลตฟอร์มที่คุณเลือกหากมันมีค่าที่สอดคล้องกัน)
ps ในการตั้งค่าเสมอฉันมากับโซลูชั่น Perl 199 Char แม้ว่าฉันจะยังไม่ได้โพสต์ในกรณีที่มีคนมาด้วยตนเอง (นอกจากนี้ยังเป็นเรื่องวิเศษด้วย) แน่นอนว่าสิ่งนี้ไม่ควรกีดกันให้คุณโพสต์วิธีการแก้ปัญหาของคุณเองแม้ว่าจะนานกว่าก็ตาม
อัปเดต:ตอนนี้ฮันได้เอาชนะมันด้วยชาร์ตนี่คือคำตอบ 199-char Perl ของฉัน:
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'
มันคล้ายกับโซลูชันของ DC (และโซลูชันที่ใช้ zlib / gzip อื่น ๆ ในภาษาต่างๆ) ยกเว้นว่าฉันใช้uuencodingแทนbase64สำหรับข้อความที่ถูกบีบอัดและเทคนิคการเล่นกอล์ฟอื่น ๆ เล็กน้อย
อัปเดต 2 : ฉันคิดว่าถึงเวลาแล้วที่จะต้องยอมรับผู้ชนะอย่างเป็นทางการ สถานที่แรกไปที่รหัส PHP ของkonsolenfreddyเนื่องจาก แต่คุณนับจำนวนตัวอักษรมันเป็นส่งที่สั้นที่สุดจนถึง ในความเป็นจริงแล้วการรวมเข้ากับสตรีม DEFLATE ที่ดีที่สุดจากโค้ด 199-char Perl ของฉันทำให้ได้ผลลัพธ์ที่สั้นกว่า 176-char:
<?=gzinflate(base64_decode("fYtBCgMxDAPvecXcmkDBv+nJMH2IH99savZUqghZRBICciDyD7Y6ivNQbwOg3VQFOXlrXbPLBZLcBpIkNjlJ8bBr754hFGhQFNNFAcmLzeiPotOt7tn3plq2mSwgjU1SjbLo2tPpGvxAxfgA"));
อย่างไรก็ตามฉันคิดว่าฮันสมควรได้รับการกล่าวถึงกิตติมศักดิ์พิเศษสำหรับการเข้าใกล้โดยไม่ต้องใช้เครื่องมือคลายการบีบอัดใด ๆ ที่เขียนไว้ล่วงหน้า ขอแสดงความยินดีกับคุณทั้งสองและสวัสดีปีใหม่ทุกคน!