เกมสตีวีของชีวิตและความเมื่อยล้าค่อนข้างคล้ายกับที่มีชื่อเสียงมากขึ้นเกมคอนเวย์ของชีวิต
จักรวาลของเกมแห่งชีวิตและความเหนื่อยล้าของ Stewie (GoLF) เป็นกริด orthogonal สองมิติที่ไม่มีที่สิ้นสุดของสแควร์เซลล์ซึ่งแต่ละแห่งอยู่ในหนึ่งในสามสถานะที่เป็นไปได้มีชีวิตอยู่ตายหรือเหนื่อย ทุกเซลล์มีปฏิสัมพันธ์กับแปดเพื่อนบ้านซึ่งเป็นเซลล์ที่อยู่ในแนวนอนแนวตั้งหรือแนวทแยงมุม ในแต่ละขั้นตอนการเปลี่ยนภาพต่อไปนี้จะเกิดขึ้น:
- เซลล์ที่มีชีวิตใด ๆ ที่มีเพื่อนบ้านที่มีชีวิตน้อยกว่าสองคนตายราวกับว่าเกิดจากการมีประชากรน้อย
- เซลล์ที่มีชีวิตใด ๆ ที่มีสองหรือสามเพื่อนบ้านอาศัยอยู่ไปยังรุ่นต่อไป
- เซลล์ที่มีชีวิตใด ๆ ที่มีเพื่อนบ้านที่มีชีวิตมากกว่าสามคนจะตายไปราวกับว่ามีจำนวนประชากรมากเกินไป
- เซลล์ที่ตายแล้วใด ๆ ที่มีเพื่อนบ้านที่มีชีวิตสามคนจะกลายเป็นเซลล์มีชีวิตราวกับว่าได้รับการสืบพันธุ์
- เซลล์ใด ๆ ที่มีชีวิตอยู่สำหรับสองชั่วอายุคนติดต่อกันจะตายราวกับว่าล้า มันไม่สามารถปลุกชีวิตอีกครั้งจนกว่าคนรุ่นต่อไป
- เซลล์ใด ๆ ที่อยู่นอกขอบเขตของกริดอินพุตจะตายเช่นเดียวกับที่ตกลงมาจากหน้าผา
ท้าทาย:
ความท้าทายของคุณคือการใช้กริดของขนาดn-by-m ซึ่งแสดงสถานะเริ่มต้นของ GoLF และจำนวนเต็มpและแสดงสถานะของเกมหลังรุ่นp
กฎ:
- รูปแบบอินพุตและเอาต์พุตเป็นทางเลือก แต่กริดอินพุต / เอาต์พุตควรมีการแทนค่าเดียวกัน
- คุณสามารถเลือกสัญลักษณ์ที่พิมพ์ได้เพื่อแสดงเซลล์ที่มีชีวิตและเซลล์ที่ตายแล้ว (ฉันจะใช้
1
สำหรับเซลล์ที่มีชีวิตและ0
เซลล์ที่ตายแล้ว) - คุณสามารถเลือกได้ถ้าคุณมีดัชนี 0 หรือ 1 ในตัวอย่าง
p=1
หมายถึงสถานะหลังจากหนึ่งขั้นตอน - รหัสสั้นที่สุดในแต่ละภาษาชนะ
- อนุญาตให้ใช้ฟังก์ชันในตัวสำหรับระบบเซลลูลาร์อัตโนมัติ
กรณีทดสอบ:
ในตัวอย่างที่เราได้รวมเพียงตารางการป้อนข้อมูลในการป้อนข้อมูลที่ไม่พี ผมได้ให้ผลต่างๆP -values คุณจะต้องส่งออกเพียงตารางที่จะไปด้วยการป้อนข้อมูลที่ได้รับหน้า
Input:
0 0 0 0 0
0 0 1 0 0
0 0 1 0 0
0 0 1 0 0
0 0 0 0 0
--- Output ---
p = 1
0 0 0 0 0
0 0 0 0 0
0 1 1 1 0
0 0 0 0 0
0 0 0 0 0
p = 2
0 0 0 0 0
0 0 1 0 0
0 0 0 0 0
0 0 1 0 0
0 0 0 0 0
p = 3 -> All dead
---
Input:
0 1 0 0 0 0
0 0 1 0 0 0
1 1 1 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
--- Output ---
p = 1
0 0 0 0 0 0
1 0 1 0 0 0
0 1 1 0 0 0
0 1 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
p = 2
0 0 0 0 0 0
0 0 0 0 0 0
1 0 0 0 0 0
0 1 1 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
p = 3
0 0 0 0 0 0
0 0 0 0 0 0
0 1 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
p = 4 -> All dead
Input
0 1 1 0 1 1 0
1 1 0 1 1 1 1
0 1 0 0 0 1 0
0 0 0 1 1 0 1
1 0 0 1 0 1 1
0 0 1 1 0 1 1
1 1 0 0 0 0 1
--- Output ---
p = 1
1 1 1 0 0 0 1
1 0 0 1 0 0 1
1 1 0 0 0 0 0
0 0 1 1 0 0 1
0 0 0 0 0 0 0
1 0 1 1 0 0 0
0 1 1 0 0 1 1
p = 2
1 0 0 0 0 0 0
0 0 0 0 0 0 0
1 0 0 1 0 0 0
0 1 1 0 0 0 0
0 1 0 0 0 0 0
0 0 0 0 0 0 0
0 0 1 1 0 0 0
p = 3
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 1 1 0 0 0 0
1 1 0 0 0 0 0
0 1 1 0 0 0 0
0 0 1 0 0 0 0
0 0 0 0 0 0 0
p = 4
0 0 0 0 0 0 0
0 0 0 0 0 0 0
1 1 1 0 0 0 0
1 0 0 0 0 0 0
1 0 1 0 0 0 0
0 1 1 0 0 0 0
0 0 0 0 0 0 0
p = 5
0 0 0 0 0 0 0
0 1 0 0 0 0 0
1 0 0 0 0 0 0
0 0 1 0 0 0 0
1 0 0 0 0 0 0
0 1 0 0 0 0 0
0 0 0 0 0 0 0
p = 6
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 1 0 0 0 0 0
0 1 0 0 0 0 0
0 1 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
p = 7
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
1 1 1 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
p = 8
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 1 0 0 0 0 0
0 0 0 0 0 0 0
0 1 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
p = 9 -> All dead
ใช่ฉันรู้ว่าเมล็ดเริ่มต้นทั้งหมดจะไม่สิ้นสุดในทุกเซลล์ที่ตายไปแล้ว