ตัวเลข 7 ส่วนสามารถแสดงใน ASCII โดยใช้_|
ตัวอักษร นี่คือ1
ตัวเลขขนาด:
_ _ _ _ _ _ _ _
| _| _| |_| |_ |_ | |_| |_| | |
| |_ _| | _| |_| | |_| _| |_|
ขนาดที่ใหญ่กว่านั้นเกิดขึ้นจากการทำให้แต่ละส่วนยาวขึ้นตามสัดส่วน นี่คือตัวเลข 3 หลัก
___ ___ ___ ___ ___ ___ ___
| | | | | | | | | |
| | | | | | | | | |
|___| |___ | |___ ___| | | |___|
| | | | | | | | | |
| | | | | | | | | |
|___| |___| | ___| ___| |___| ___|
เป้าหมาย
ในการท้าทายนี้คุณต้องเขียนโปรแกรม / ฟังก์ชั่นที่สามารถใช้ตัวเลขหนึ่งตัวเป็นอินพุตและระบุขนาดของมัน จับ: 0
ถ้าใส่ไม่ได้เป็นหลักที่ถูกต้องแล้วโปรแกรมของคุณควรเอาท์พุท
นี่คือโค้ดกอล์ฟซึ่งมีจำนวนไบต์น้อยที่สุดเป็นผู้ชนะ
คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่นซึ่งสามารถรับตัวเลขไม่ว่าจะเป็น STDIN หรืออาร์กิวเมนต์และพิมพ์ / คืนค่า
ตัวเลขจะถูกจัดเป็นสตริงแบบหลายบรรทัดซึ่งมีพื้นที่ว่างตามท้ายจำนวนน้อยที่สุดเพื่อให้เป็นสี่เหลี่ยมผืนผ้าที่สมบูรณ์แบบ ขึ้นบรรทัดใหม่เป็นส่วนเสริมของอินพุต จะไม่มีช่องว่างนำหน้าที่ไม่จำเป็น
เมื่อตัวเลขที่ไม่ใช่ตัวเลขถูกส่งผ่านก็จะยังคงประกอบด้วย_|
ตัวอักษรเบาะสี่เหลี่ยมและไม่มีช่องว่างนำที่ไม่จำเป็น จะไม่มีบรรทัดว่างเปล่า คุณไม่ต้องจัดการกับอินพุตว่าง
เอาต์พุตควรเป็นจำนวนเต็มที่ไม่เป็นลบเดี่ยวโดยมีบรรทัดใหม่ต่อท้ายที่เป็นตัวเลือก 0
ถ้าใส่ไม่ได้เป็นหลักที่เหมาะสมของขนาดใดเอาท์พุท อื่นเอาท์พุทขนาด
N
นี่เป็นคำแนะนำที่มีประโยชน์สำหรับความกว้างและความสูงของแต่ละบาทสำหรับขนาดที่กำหนด
Digit Height Width (not counting newlines)
1 2N 1
2 2N+1 N+2
3 2N+1 N+1
4 2N N+2
5 2N+1 N+2
6 2N+1 N+2
7 2N+1 N+1
8 2N+1 N+2
9 2N+1 N+2
0 2N+1 N+2
ตัวอย่าง I / O
ใน:
__
|
__|
|
__|
ออก:
2
ใน:
|
|
|
ออก:
0 //because it is of an invalid height. Either 1 char too short or tall.
ใน:
| |
| |
| |
|____|
|
|
|
|
ออก:
4
ใน:
___
|
|___
| |
|___|
ออก:
0 //1 char too wide
ใน:
_
|_|
| |
ออก:
0 //it's not a digit
ใน:
__
|
|__
|
__|
ออก:
2
ใน:
_ _
_| _|
|_ _|
ออก:
0 //both would be valid individually, but input should be a *single* digit
ใน:
_
|_|
|_|
ออก:
1
ใน:
|
|
ออก:
1
ใน:
__|_
|
_ |
_
|__
ออก:
0
นี่เป็นค่าประมาณการผกผันของการแปลงตัวเลขเป็นรูปแบบการแสดงผล 7 ส่วนจาก 3 ปีย้อนหลัง
0
ใช่ไหม? ถ้าคุณไม่ได้คิดวิธีการวาด