ฉันคิดว่ามันน่าทึ่งที่ตัวอักษร "H" และ "ฉัน" นั้นมีความคล้ายคลึงกันมาก "H" เป็นจังหวะในแนวนอนที่ล้อมรอบด้วยสองจังหวะในแนวตั้ง "I" เป็นจังหวะในแนวตั้งที่ล้อมรอบด้วยสองจังหวะในแนวนอน (ขึ้นอยู่กับแบบอักษรของคุณ) ฉันพนันได้เลยว่ามันจะซ้อนกัน ... คุณรู้ไหมว่าอะไรทำให้ฉันนึกถึง? เศษส่วน !!!
มานิยามปิรามิด "IHIH" ดังนี้: การวนซ้ำครั้งแรกคือการแสดง ASCII ของตัวอักษร "I":
---
|
---
การวนซ้ำครั้งถัดไปมีจังหวะตามแนวตั้งที่ด้านใดด้านหนึ่ง
| |
|---|
| | |
|---|
| |
หากคุณมองว่า "ฉัน" ที่อยู่ตรงกลางเป็นจังหวะแนวนอนเดียวการทำซ้ำครั้งที่สองนี้โดยทั่วไปจะเป็น "H" การวนซ้ำครั้งที่สามจะเพิ่มการลากเส้นแนวนอนที่ด้านบนและล่าง
-------
| |
|---|
| | |
|---|
| |
-------
อีกครั้งถ้าคุณดู "H" ที่อยู่ตรงกลางเป็นจังหวะในแนวดิ่งเดียวการทำซ้ำครั้งนี้จะเป็น "I" รูปแบบนี้ดำเนินต่อไปสลับกันระหว่าง "H" กับ "ฉัน" ทุกครั้ง สำหรับการอ้างอิงต่อไปนี้เป็น 6 การทำซ้ำแรก:
1:
---
|
---
2:
| |
|---|
| | |
|---|
| |
3:
-------
| |
|---|
| | |
|---|
| |
-------
4:
| |
|-------|
| | | |
| |---| |
| | | | |
| |---| |
| | | |
|-------|
| |
5:
-----------
| |
|-------|
| | | |
| |---| |
| | | | |
| |---| |
| | | |
|-------|
| |
-----------
6:
| |
|-----------|
| | | |
| |-------| |
| | | | | |
| | |---| | |
| | | | | | |
| | |---| | |
| | | | | |
| |-------| |
| | | |
|-----------|
| |
ความท้าทาย:
เขียนโปรแกรมหรือฟังก์ชั่นที่ให้ผลลัพธ์การทำซ้ำN'thของปิรามิด IHIH และขึ้นบรรทัดใหม่ที่เป็นทางเลือก ข้อมูลที่คุณป้อนจะเป็นจำนวนเต็มบวกเดียวในรูปแบบที่คุณต้องการ คุณไม่ต้องจัดการอินพุตที่ไม่ถูกต้องเช่นไม่ใช่จำนวนเต็มจำนวนน้อยกว่า 1 เป็นต้นโปรแกรมของคุณจะต้องสร้างเอาต์พุตที่ถูกต้องอย่างน้อยที่สุดสำหรับอินพุตสูงสุดถึง 20 เนื่องจากโค้ดนี้เป็นกอล์ฟกอล์ฟจึงไม่อนุญาตช่องโหว่มาตรฐาน และคำตอบที่สั้นที่สุดเป็นไบต์ชนะ!