एक द्विदलीय ग्राफ एक ग्राफ होता है, जिसके कोने को दो असमान सेटों में विभाजित किया जा सकता है, जैसे कि कोई धार एक ही सेट में दो कोने जोड़ता है। एक ग्राफ द्विदलीय है यदि और केवल यदि यह 2-रंगीन है।
चुनौती
आपका कार्य एक अप्रत्यक्ष सरल ग्राफ के आसन्न मैट्रिक्स को दिया जाता है, यह निर्धारित करता है कि क्या यह द्विदलीय ग्राफ है। यही है, अगर एक किनारे कोने को जोड़ता है i और j, दोनों (i, j) और (j, i) मैट्रिक्स की प्रविष्टि 1 है।
चूंकि ग्राफ़ अप्रत्यक्ष और सरल है, इसकी आसन्न मैट्रिक्स सममित है और इसमें केवल 0 और 1 है।
विशिष्ट तथ्य
आपको इनपुट के रूप में एक एन-बाय-एन मैट्रिक्स लेना चाहिए (किसी भी रूप में, उदाहरणों की सूची, तार की सूची, सी- 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
स्कोरिंग
उत्तर की गणना करने वाले बिल्डरों पर सीधे प्रतिबंध लगा दिया जाता है।
यह कोड-गोल्फ है , इसलिए इस महीने के अंत में सबसे छोटा कार्यक्रम (बाइट्स में) जीत गया!
-1
लिए किसी भी गैर-नकारात्मक पूर्णांक के लिए वापस आ सकते हैं ?
0
-> मिथ्या, >0
-> सामान्य रूप से मानक सत्य / झूठे नियमों द्वारा सत्य की अनुमति दी जाती है। -1
और ≥ 0
यह आम नहीं है, इसलिए मैंने पूछा है।