ท้าทาย
ฤดูหนาวกำลังใกล้เข้ามาอย่างรวดเร็วโดยมีหลายสถานที่ที่รับหิมะชั้นหนึ่งสำหรับฤดูกาลที่ 15/16 ดังนั้นทำไมเราไม่แยกเครื่องจักรหิมะออกมา
ได้รับจำนวนเต็มn
ผ่าน STDIN ผลผลิตเกล็ดหิมะเป็นตัวแทน ASCII เบต้า (ตามที่อธิบายไว้ด้านล่าง) n
ที่ระดับ
เบต้าสโนว์เฟลก
เกล็ดหิมะเริ่มต้นที่ระดับ 0 ด้วย x เดียว:
x
จากนั้นในแต่ละมุมคุณจะเพิ่มหนึ่งในรูปร่างเหล่านี้:
x
xx
คุณเพิ่มรูปร่างด้านบนไปที่มุมบนขวา สำหรับมุมขวาล่างหมุน 90 องศาตามเข็มนาฬิกาสำหรับซ้ายล่าง 180 °ตามเข็มนาฬิกาและซ้ายบน 270 °ตามเข็มนาฬิกา
หากคุณทำเช่นนั้นคุณจะได้รับรูปร่างดังต่อไปนี้:
x x
xx xx
x
xx xx
x x
จดการวางแนวของรูปร่าง การดำเนินการเราเพิ่มรูปร่างให้มากขึ้นในแต่ละมุมโดยใช้กฎการวางแนวที่อธิบายไว้ข้างต้นไปยังไดอะแกรมเพื่อรับระดับ 2:
x x x
xxxxxxx
xx x x xx
xxx xxx
xx x xx
xxx xxx
xx x x xx
xxxxxxx
x x x
โปรดทราบว่ารูปร่างจะถูกเพิ่มลงในx
s โดยมีด้านที่สัมผัสสองด้านขึ้นไป (ซึ่งเรียกว่ามุมด้านบน)
รูปร่าง L อาจและจะทับซ้อนกันสำหรับค่าที่n
มากกว่า 1 ตัวอย่างเช่น:
หากระดับ 0 คือ:
x x
จากนั้นจะต้องมีการทับซ้อนในระดับ 1 (ระบุด้วยo
, ไม่รวมo
ในผลลัพธ์ของคุณ):
x o x
xxxoxxx
x x
xxxoxxx
x o x
งานของคุณคือการส่งออกการแสดง ASCII นี้ของเกล็ดหิมะของเบต้า
โบนัส
จะมีโบนัส 50 rep สำหรับโปรแกรมที่สั้นที่สุดซึ่งเมื่อn
เป็นลบจะส่งเกล็ดหิมะ (ที่ระดับn*-1
) เป็นรูปภาพหรือกราฟิกไปยังหน้าจอ
คุณอาจมีโปรแกรมแยกต่างหากสำหรับเงินรางวัลและงานหลัก
การชนะ
โปรแกรมที่สั้นที่สุดในหน่วยไบต์ชนะ
2 or more exposed sides
กฎได้หรือไม่? สมมติว่าเป็นศูนย์0,0
แล้ว1,1
, 1,-1
, -1,-1
, -1,1
ทุกคนมี 2 ด้านสัมผัส (ด้านข้างหันไปทางอื่น ๆ 4 คะแนน) มันควรจะเป็นด้านที่เปิด 3+ เพื่อหลีกเลี่ยงการ infilling หรือมิฉะนั้นจะขยายได้ก็ต่อเมื่อมีเพื่อนบ้าน 0 หรือ 1 คน (สำคัญ)