ฝ่ายกราฟเป็นกราฟที่มีจุดสามารถแบ่งออกเป็นสองชุดเคลื่อนเช่นว่าขอบไม่เชื่อมต่อสองจุดอยู่ในชุดเดียวกัน กราฟเป็นสองฝ่ายถ้าหากมันเป็น 2 สี
ท้าทาย
งานของคุณคือการให้กราฟadjacencyของกราฟง่าย ๆ ไม่ได้บอกทิศทางว่าเป็นกราฟสองฝ่ายหรือไม่ นั่นคือถ้าขอบเชื่อมต่อจุดยอด i และ j ทั้งสองรายการ (i, j) และ (j, i) ของเมทริกซ์คือ 1
เนื่องจากกราฟนั้นไม่ได้บอกทิศทางและเรียบง่ายเมทริกซ์ adjacency จึงมีความสมมาตรและมีเพียง 0 และ 1
ข้อมูลจำเพาะ
คุณควรใช้เมทริกซ์ N-by-N เป็นอินพุต (ในรูปแบบใด ๆ เช่นรายการของรายการ, รายการสตริง, C-like int**
และขนาด, อาร์เรย์ที่แบน, อินพุตดิบ ฯลฯ )
ฟังก์ชั่น / โปรแกรมควรกลับ / ส่งออกค่าความจริงถ้ากราฟเป็นสองฝ่ายและเป็นเท็จอย่างอื่น
กรณีทดสอบ
['00101',
'00010',
'10001',
'01000',
'10100'] : False
['010100',
'100011',
'000100',
'101000',
'010000',
'010000'] : True (divide into {0, 2, 4, 5} and {1, 3})
['00',
'00'] : True
เกณฑ์การให้คะแนน
Builtins ที่คำนวณคำตอบโดยตรงถูกห้าม
นี่คือโค้ดกอล์ฟดังนั้นโปรแกรมที่สั้นที่สุด (เป็นไบต์) ในตอนท้ายของเดือนนี้จะเป็นผู้ชนะ!
-1
หาค่า falsy และจำนวนเต็มที่ไม่เป็นลบสำหรับความจริงได้ไหม?
0
-> Falsy, >0
-> Truthy ได้รับอนุญาตโดยทั่วไปตามกฎความจริง / เท็จ -1
และ≥ 0
ไม่ธรรมดานั่นคือสาเหตุที่ฉันถาม