ปัญหา
พิจารณาสแควร์ 3 คูณ 3 ตารางของจำนวนเต็มไม่เป็นลบ สำหรับแต่ละแถวผลรวมของจำนวนเต็มจะถูกกำหนดให้เป็นi
r_i
ในทำนองเดียวกันสำหรับแต่ละคอลัมน์ผลรวมของจำนวนเต็มในคอลัมน์นั้นจะถูกกำหนดให้เป็น j
c_j
งานคือการเขียนรหัสเพื่อระบุการมอบหมายที่แตกต่างกันทั้งหมดที่เป็นไปได้ของจำนวนเต็มไปยังตารางที่กำหนดข้อ จำกัด ผลรวมแถวและคอลัมน์ รหัสของคุณควรส่งออกหนึ่งครั้ง
อินพุต
รหัสของคุณควรใช้จำนวนเต็ม 3 จำนวนที่ไม่เป็นลบซึ่งระบุข้อ จำกัด ของแถวและ 3 จำนวนเต็มที่ไม่เป็นลบระบุข้อ จำกัด ของคอลัมน์ คุณสามารถสันนิษฐานได้ว่าสิ่งเหล่านี้ถูกต้องกล่าวคือข้อ จำกัด ของผลรวมหรือแถวเท่ากับผลรวมของข้อ จำกัด ของคอลัมน์ รหัสของคุณสามารถทำได้ทุกวิธีที่สะดวก
เอาท์พุต
รหัสของคุณควรแสดงกริด 2d ที่แตกต่างกันซึ่งคำนวณในรูปแบบที่มนุษย์สามารถอ่านได้ที่คุณเลือก แน่นอนยิ่งดี เอาต์พุตต้องไม่มีกริดที่ซ้ำกัน
ตัวอย่าง
หากข้อ จำกัด ของแถวและคอลัมน์ทั้งหมด1
นั้นมี6
ความเป็นไปได้ที่แตกต่างกันเท่านั้น สำหรับแถวแรกคุณสามารถใส่หนึ่ง1
ในสามคอลัมน์แรกสำหรับแถวที่สองขณะนี้มี2
ทางเลือกและตอนนี้แถวสุดท้ายจะถูกกำหนดโดยทั้งสองก่อนหน้าอย่างสมบูรณ์ 0
ทุกสิ่งทุกอย่างในตารางควรจะกำหนดให้
สมมติว่าอินพุต2 1 0
สำหรับแถวและ1 1 1
สำหรับคอลัมน์ ด้วยรูปแบบผลลัพธ์ที่น่ารักของ APL กริดจำนวนเต็มที่เป็นไปได้คือ:
┌─────┬─────┬─────┐
│0 1 1│1 0 1│1 1 0│
│1 0 0│0 1 0│0 0 1│
│0 0 0│0 0 0│0 0 0│
└─────┴─────┴─────┘
ทีนี้สมมติว่าอินพุต1 2 3
สำหรับแถวและ3 2 1
สำหรับคอลัมน์ จำนวนเต็มกริดที่เป็นไปได้คือ:
┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
│0 0 1│0 0 1│0 0 1│0 1 0│0 1 0│0 1 0│0 1 0│1 0 0│1 0 0│1 0 0│1 0 0│1 0 0│
│0 2 0│1 1 0│2 0 0│0 1 1│1 0 1│1 1 0│2 0 0│0 1 1│0 2 0│1 0 1│1 1 0│2 0 0│
│3 0 0│2 1 0│1 2 0│3 0 0│2 1 0│2 0 1│1 1 1│2 1 0│2 0 1│1 2 0│1 1 1│0 2 1│
└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘