คำถามนี้เป็นคำถามเกี่ยวกับsandpiles ศาสนาคริสต์ อ่านความท้าทายก่อนหน้านี้และดูวิดีโอเลขที่นี้เพื่อเรียนรู้เพิ่มเติม
กองทรายแบบอาเบลเรียนขนาดnคูณnเป็นตารางที่มีหมายเลข 0, 1, 2 และ 3 (แทนจำนวนเม็ดทราย) การเพิ่มทรายสองอันทำงานโดยการเพิ่มองค์ประกอบทีละองค์ประกอบก่อนจากนั้นจึงพลิกองค์ประกอบใด ๆ ที่สูงกว่า 3 ลำดับที่คุณโค่นล้มไม่สำคัญผลลัพธ์ที่ได้จะเหมือนกัน เมื่อเซลล์ล้มจำนวนลดลง 4 และแต่ละเพื่อนบ้านโดยตรงเพิ่มขึ้น 1 นี้สามารถทำให้เกิดปฏิกิริยาลูกโซ่ หากเซลล์อยู่บนขอบของตารางธัญพืชใด ๆ ที่หล่นลงมาจากตารางในขณะที่โค่นล้มหายไป
ตัวอย่างเช่นฉันกำลังเพิ่มทราย 2 3 คูณ 3 (ให้ปฏิกิริยาลูกโซ่ค่อนข้างรุนแรง):
3 3 3 1 2 1 4 5 4 4 6 4 6 2 6 6 3 6 2 5 2 4 1 4 4 2 4 0 4 0 2 0 2 2 1 2
3 3 3 + 2 1 2 = 5 4 5 -> 6 0 6 -> 2 4 2 -> 3 0 3 -> 5 0 5 -> 1 4 1 -> 2 0 2 -> 4 0 4 -> 0 4 0 -> 1 0 1
3 3 3 1 2 1 4 5 4 4 6 4 6 2 6 6 3 6 2 5 2 4 1 4 4 2 4 0 4 0 2 0 2 2 1 2
ในความท้าทายนี้เรากำลังสนใจในการย่อยของทั้งหมดที่เป็นไปได้nโดยn sandpiles เซ็ตย่อยนี้มี Sandpile ใด ๆ ที่คุณสามารถหาได้โดยเพิ่มแซนด์ไพล์แบบกำหนดเองไปยัง all-3s nโดยn sandpile ตัวอย่างเช่นเหนือเราเห็นว่า212 | 101 | 212
อยู่ในส่วนย่อยเพราะเราได้รับมันโดยการเพิ่มบางสิ่งบางอย่างลงในทรายทั้ง 3
ตอนนี้ชุดย่อยนี้มีองค์ประกอบที่น่าสนใจ: องค์ประกอบตัวตน หากคุณนำองค์ประกอบนี้และเพิ่มไปยังองค์ประกอบอื่น ๆ ในชุดย่อยผลรวมจะไม่เปลี่ยนแปลง กล่าวอีกนัยหนึ่ง sandpile นี้ทำหน้าที่เหมือนศูนย์ของชุดย่อยนี้ มันเพิ่งเกิดขึ้นนั่น212 | 101 | 212
คือองค์ประกอบศูนย์สำหรับเซตย่อย 3 คูณ 3 ตัวอย่างเช่น:
2 2 2 2 1 2 4 3 4 0 5 0 2 1 2 2 2 2
2 2 2 + 1 0 1 = 3 2 3 -> 5 2 5 -> 1 6 1 -> 2 2 2
2 2 2 2 1 2 4 3 4 0 5 0 2 1 2 2 2 2
นี่คือความท้าทายของคุณ: ได้รับแล้ว nค้นหาเอกลักษณ์องค์ประกอบของส่วนย่อยของnโดยnตาราง เอาท์พุทมันโดยการกำหนดสีที่ไม่ซ้ำกันที่มีความคมชัดเพียงพอที่คุณเลือกให้กับแต่ละ0, 1, 2, 3
และส่งภาพ n โดย n รหัสของคุณจะต้องสามารถผลิตเคสขนาด 50 x 50 ได้ภายในไม่กี่นาทีบนพีซีที่ทันสมัย
ตัวอย่างเช่นองค์ประกอบข้อมูลเฉพาะตัว 500 โดย 500:
นี่คือสีฟ้า = 3, สีเขียว = 2, สีแดง = 1, สีขาว = 0 แต่คุณไม่จำเป็นต้องใช้ชุดรูปแบบสีนี้ในคำตอบของคุณ