ในฟอนต์ตัวหนังสือตัวอักษรตัวอักษรตัวพิมพ์ใหญ่ตัวอักษรทั้งหมดมีความกว้าง 5 หน่วยและสูง 5
███ ████ ███ ████ █████ █████ ████ █ █ █████ █ █ █ █ █ █
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ ██ ██
█████ ████ █ █ █ ████ ████ █ ██ █████ █ █ ███ █ █ █ █
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ ████ ███ ████ █████ █ ████ █ █ █████ ███ █ █ █████ █ █
█ █ ███ ████ ███ ████ ████ █████ █ █ █ █ █ █ █ █ █ █ █████
██ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ █ █ █ ████ █ █ ████ ███ █ █ █ █ █ █ █ █ █ █ █
█ ██ █ █ █ █ ██ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ ███ █ ████ █ █ ████ █ ███ █ █ █ █ █ █ █████
นอกจากนี้ยังมีช่องว่าง 1 หน่วยระหว่างตัวอักษรและระหว่างบรรทัดตามที่เห็น ดังนั้นตัวอักษรแต่ละตัวสามารถใช้พื้นที่ได้ถึง 6 × 6 หน่วย
สมมติว่าแทนการใช้บล็อกตัวอักษรเต็มรูปแบบ ( █
) โดยตรงรูปทรงของตัวอักษรที่เราต้องการที่จะใช้ตัวอักษรอื่น ๆ ในตัวอักษรเดียวกัน สิ่งนี้เกี่ยวข้องกับการเพิ่มขนาดของข้อความ 6-fold เพื่อให้ตัวอักษรที่ทำจากบล็อกเต็มสามารถนำมาใช้แทนแบบเต็มบล็อกในข้อความขนาดใหญ่
หากไม่เหมาะสมหวังว่าตัวอย่างนี้จะ นี่คือ A ที่ทำจาก B โดยใช้ฟอนต์แบบพิกเซล:
████ ████ ████
█ █ █ █ █ █
████ ████ ████
█ █ █ █ █ █
████ ████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
████ ████ ████ ████ ████
█ █ █ █ █ █ █ █ █ █
████ ████ ████ ████ ████
█ █ █ █ █ █ █ █ █ █
████ ████ ████ ████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
B ของทำจากบล็อกเต็มและ A ทำจาก B ของ โปรดสังเกตว่า B's ยังคงมีหนึ่งหน่วยระหว่างหน่วยแนวนอนและแนวตั้ง
เราสามารถขยายความคิดนี้โดยใช้คำแทนที่จะเป็นแค่ตัวอักษร นี่คือ "น้ำ" ที่ทำจาก "ไฟ":
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █
█████ █████ ████ █████ █████ █████ ████ █████
█ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████
█ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █
█████ █████ ████ █████ █████ █████ ████ █████ █████
█ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████
█ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████
สังเกตว่า "ไฟ" ปรากฏซ้ำ ๆ ในแต่ละบรรทัดและเรียงตามลำดับเสมอไม่ว่าจะมีช่องว่างระหว่างตัวอักษรเท่าใด อินสแตนซ์ที่ถูกต้องที่สุดของสาม "FIRE" ถูกตัดออก แต่เนิ่นเนื่องจากวิธีการจัดรูปแบบของตัวอักษร "WATER"
ความคิดนี้สามารถขยายได้ดียิ่งขึ้นโดยใช้เหล่านี้คำพูดที่ทำจากคำพูดที่จะทำให้คำพูดที่ทำจากคำพูดที่ทำจากคำพูดหรือแม้กระทั่งคำพูดที่ทำจากคำพูดที่ทำจากคำพูดที่ทำจากคำพูด ไม่มีข้อ จำกัด ทางทฤษฎี
อีกตัวอย่างหนึ่งจะวางโพสต์นี้เกินขีด จำกัด อักขระ 30k แต่คุณสามารถดูความหมายโดย "คำที่ทำจากคำที่ทำด้วยคำว่า" โดยการเรียกใช้กองเล็กเกร็ดน้อยที่ดี เพียงแค่ปล่อยพารามิเตอร์ไว้ที่ค่าเริ่มต้นแล้วกด "ไปกันเลย" คุณควรเห็นคำว่า "DOG" ที่ทำจากคำว่า "CAT" ที่ทำจากคำว่า "MOUSE"
การพิมพ์ช่องว่างใด ๆ ที่คั่นรายการคำที่มีเพียงตัวพิมพ์ใหญ่ในกล่องข้อความจะสร้างคำแรกที่ทำจากคำที่สองที่สร้างจากคำที่สามที่ทำจากคำที่สามที่ทำจากที่สี่ที่ทำจาก ... ฯลฯ
คำเตือน: การป้อนมากกว่า 4 หรือ 3 คำจะสร้างข้อความจำนวนมากและใช้เวลานาน มันอาจทำให้เบราว์เซอร์ / คอมพิวเตอร์ / รถยนต์ของคุณขัดข้อง
ท้าทาย
เป้าหมายของการท้าทายนี้คือการสะท้อนสิ่งที่กองย่อยทำในจำนวนอักขระน้อยที่สุด
คุณต้องเขียนโปรแกรมที่คั่นด้วยช่องว่างของคำที่มีเพียงตัวพิมพ์ใหญ่และส่งออกคำแรก "ทำจาก" ที่สอง "ที่ทำจาก" ที่สามและอื่น ๆ โดยใช้ตัวอักษรตัวหนังสือที่ได้รับข้างต้น
ช่องทำเครื่องหมาย "ธรรมดา ASCII" และคุณสมบัติขนาดแบบอักษรของตัวอย่างไม่จำเป็นต้องได้รับการสนับสนุนในโปรแกรมของคุณ การทำมิเรอร์การเปลี่ยนแปลงจากรายการคำเป็นคำที่ทำจากคำเป็นจุดหลักและมีข้อกำหนดเพียงอย่างเดียว
รายละเอียด
อินพุตควรมาจาก stdin, บรรทัดคำสั่งหรือคุณอาจจะเขียนฟังก์ชั่นที่รับสตริง
คุณอาจสมมติว่าอินพุตนั้นถูกต้องเสมอเช่นชุดของคำที่ประกอบด้วยตัวอักษรพิมพ์ใหญ่คั่นด้วยช่องว่างหนึ่งช่องโดยไม่มีช่องว่างนำหน้าหรือต่อท้าย
เอาต์พุตควรไปที่ stdout (หรือทางเลือกที่คล้ายกัน) หรือไปยังไฟล์ที่มีชื่อที่คุณเลือก
เอาท์พุทควรประกอบด้วยสิ้นเชิงของตัวละครที่ว่างเปล่าพื้นที่ , ตัวอักษรเต็มรูปแบบในพื้นที่และการขึ้นบรรทัดใหม่
- ตัวละครที่ว่างเปล่า / เต็มพื้นที่ทั้งควรมีช่องว่างและบล็อกเต็ม (
,
█
) ตามลำดับหรือระยะเวลาและ X (.
,X
) ตามลำดับ
- ตัวละครที่ว่างเปล่า / เต็มพื้นที่ทั้งควรมีช่องว่างและบล็อกเต็ม (
เอาต์พุตไม่ควรมีคอลัมน์นำหน้าใด ๆ ที่มีเฉพาะอักขระช่องว่างแม้ว่าจะอนุญาตให้ใช้อักขระช่องว่างเว้นวรรคในบรรทัดใดก็ได้
ดังนั้นนี้ได้รับอนุญาต:
X...X.XXXXX.. X...X.X X.X.X.XXXX.... X.X.X.X.. .X.X..XXXXX..
แต่นี่ไม่ใช่:
.X...X.XXXXX.. .X...X.X .X.X.X.XXXX.... .X.X.X.X.. ..X.X..XXXXX..
ไม่ควรมีแถวนำหน้าหรือต่อท้ายที่มีอักขระเว้นวรรคเท่านั้น ขึ้นบรรทัดใหม่แบบลากเดียวก็ได้
นี่คือแบบอักษรที่เป็นมิตรกับสตริงมากขึ้น:
.XXX.
X...X
XXXXX
X...X
X...X
XXXX.
X...X
XXXX.
X...X
XXXX.
.XXX.
X...X
X....
X...X
.XXX.
XXXX.
X...X
X...X
X...X
XXXX.
XXXXX
X....
XXXX.
X....
XXXXX
XXXXX
X....
XXXX.
X....
X....
.XXXX
X....
X..XX
X...X
.XXXX
X...X
X...X
XXXXX
X...X
X...X
XXXXX
..X..
..X..
..X..
XXXXX
....X
....X
....X
X...X
.XXX.
X...X
X..X.
XXX..
X..X.
X...X
X....
X....
X....
X....
XXXXX
X...X
XX.XX
X.X.X
X...X
X...X
X...X
XX..X
X.X.X
X..XX
X...X
.XXX.
X...X
X...X
X...X
.XXX.
XXXX.
X...X
XXXX.
X....
X....
.XXX.
X...X
X...X
X..XX
.XXXX
XXXX.
X...X
XXXX.
X..X.
X...X
.XXXX
X....
.XXX.
....X
XXXX.
XXXXX
..X..
..X..
..X..
..X..
X...X
X...X
X...X
X...X
.XXX.
X...X
X...X
.X.X.
.X.X.
..X..
X...X
X...X
X.X.X
X.X.X
.X.X.
X...X
.X.X.
..X..
.X.X.
X...X
X...X
.X.X.
..X..
..X..
..X..
XXXXX
...X.
..X..
.X...
XXXXX
เกณฑ์การให้คะแนน
นี่คือรหัสกอล์ฟเพื่อการส่งที่สั้นที่สุดในหน่วยไบต์ชนะ อินสแตนซ์ใด ๆ ของบล็อกแบบเต็ม ( █
) สามารถนับเป็น 1 ไบต์แทน 3 เพื่อให้การส่งที่ใช้X
ไม่มีข้อได้เปรียบ
$('#question pre, .answer pre').css('line-height',1)
javascript:
ลงในแถบ URL และวาง) เพื่อทำให้งานศิลปะ ASCII อยู่ที่นี่มากมาก$('#question pre').css('line-height',1)
ง่ายต่อการอ่าน: ผลลัพธ์: i.stack.imgur.com/XmB8C.png