พื้นหลัง
พิจารณาการแข่งขันแบบรอบ - โรบินซึ่งผู้แข่งขันแต่ละคนเล่นเกมเดียวกับผู้เข้าแข่งขันคนอื่น ๆ ไม่มีการเสมอกันดังนั้นทุกเกมจึงมีผู้ชนะและผู้แพ้ ผู้เข้าแข่งขันเป็นกษัตริย์ของการแข่งขันถ้าทุกผู้เข้าประกวดคนอื่น ๆBทั้งชนะBหรือชนะอีกผู้เข้าประกวดCซึ่งในทางกลับเต้นB มันแสดงให้เห็นว่าทุกการแข่งขันมีอย่างน้อยหนึ่งราชา (แม้ว่าอาจจะมีหลายคน) ในการท้าทายนี้งานของคุณคือค้นหาราชาของทัวร์นาเมนต์ที่กำหนด
อินพุตและเอาต์พุต
การป้อนข้อมูลของคุณคือN × N
เมทริกบูลีนT
และเลือกจำนวนN ≥ 2
ผู้เข้าแข่งขัน แต่ละรายการที่T[i][j]
แสดงให้เห็นถึงผลของเกมระหว่างการแข่งขันที่i
และj
มีค่า 1 เป็นตัวแทนของผู้ชนะสำหรับi
คนและ 0 j
ชนะสำหรับ โปรดทราบว่าถ้าT[i][j] == 1-T[j][i]
i != j
เส้นทแยงมุมT
ประกอบด้วย 0s
ผลลัพธ์ของคุณจะเป็นรายชื่อของกษัตริย์ในทัวร์นาเมนต์ที่T
แสดงโดยใช้การจัดทำดัชนีแบบอิง 0 หรือ 1 คำสั่งของกษัตริย์ไม่เกี่ยวข้อง แต่ไม่ควรมีการซ้ำซ้อน
ทั้งอินพุทและเอาท์พุทสามารถทำได้ในรูปแบบที่สมเหตุสมผล
กฎและการให้คะแนน
คุณสามารถเขียนโปรแกรมเต็มรูปแบบหรือฟังก์ชั่น จำนวนไบต์ต่ำสุดที่ชนะและช่องโหว่มาตรฐานไม่ได้รับอนุญาต
กรณีทดสอบ
กรณีทดสอบเหล่านี้ใช้การจัดทำดัชนีแบบ 0 สำหรับการจัดทำดัชนีแบบ 1 ให้เพิ่มค่าเอาต์พุตแต่ละค่า
2 [[0,0],[1,0]] -> [1]
3 [[0,1,0],[0,0,0],[1,1,0]] -> [2]
3 [[0,1,0],[0,0,1],[1,0,0]] -> [0,1,2]
4 [[0,1,1,1],[0,0,1,0],[0,0,0,0],[0,1,1,0]] -> [0]
4 [[0,1,1,0],[0,0,1,0],[0,0,0,1],[1,1,0,0]] -> [0,2,3]
5 [[0,1,0,0,1],[0,0,0,0,1],[1,1,0,0,0],[1,1,1,0,1],[0,0,1,0,0]] -> [3]
5 [[0,1,0,1,0],[0,0,1,1,1],[1,0,0,0,0],[0,0,1,0,1],[1,0,1,0,0]] -> [0,1,4]
5 [[0,0,0,0,0],[1,0,1,1,0],[1,0,0,0,1],[1,0,1,0,1],[1,1,0,0,0]] -> [1,3,4]
6 [[0,0,0,0,0,0],[1,0,1,1,0,0],[1,0,0,1,1,0],[1,0,0,0,1,1],[1,1,0,0,0,1],[1,1,1,0,0,0]] -> [1,2,3,4,5]
6 [[0,0,1,1,1,0],[1,0,0,1,1,1],[0,1,0,0,1,0],[0,0,1,0,0,1],[0,0,0,1,0,1],[1,0,1,0,0,0]] -> [0,1,2,3,5]
6 [[0,1,1,0,0,1],[0,0,0,1,0,1],[0,1,0,1,1,0],[1,0,0,0,1,1],[1,1,0,0,0,0],[0,0,1,0,1,0]] -> [0,1,2,3,4,5]
8 [[0,0,1,1,0,1,1,1],[1,0,1,0,1,1,0,0],[0,0,0,1,1,0,0,0],[0,1,0,0,0,1,0,0],[1,0,0,1,0,1,0,0],[0,0,1,0,0,0,1,0],[0,1,1,1,1,0,0,1],[0,1,1,1,1,1,0,0]] -> [0,1,4,6,7]
20 [[0,0,1,1,0,1,1,0,0,0,0,1,1,0,1,1,1,1,0,1],[1,0,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,1,1,1],[0,0,0,1,0,0,0,1,1,0,1,0,1,0,0,0,0,0,1,1],[0,0,0,0,1,1,1,1,1,1,1,1,0,0,1,0,0,1,1,1],[1,0,1,0,0,0,0,1,1,0,1,1,1,0,1,1,1,1,0,1],[0,1,1,0,1,0,1,1,1,1,1,0,1,1,1,0,1,1,0,1],[0,0,1,0,1,0,0,1,1,0,1,0,1,1,1,1,1,0,1,0],[1,0,0,0,0,0,0,0,1,0,1,1,1,1,0,0,1,1,1,0],[1,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,1,1],[1,0,1,0,1,0,1,1,0,0,1,0,0,0,0,1,0,1,1,1],[1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0],[0,1,1,0,0,1,1,0,0,1,0,0,1,1,1,1,1,0,1,1],[0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,1,0,1,1,1],[1,0,1,1,1,0,0,0,0,1,0,0,1,0,1,1,1,1,1,1],[0,0,1,0,0,0,0,1,0,1,1,0,0,0,0,1,1,0,0,1],[0,0,1,1,0,1,0,1,0,0,0,0,0,0,0,0,0,1,1,1],[0,0,1,1,0,0,0,0,0,1,1,0,1,0,0,1,0,0,1,1],[0,0,1,0,0,0,1,0,1,0,1,1,0,0,1,0,1,0,1,1],[1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,0,0,0,0,0],[0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,1,0]] -> [0,1,3,4,5,7,8,11,15,17,18]