MMatchOriel
कार्यप्रवाह

कोडिंग कार्यप्रवाह · अधिकतम द्विभागीय मिलान

03
उत्पाद

कार्यप्रवाह

अनुमत किनारों के समुच्चयों से अधिकतम 32 शीर्ष वाले दो समूहों के बीच सबसे अधिक जोड़ों का मिलान खोजें। अलग शीर्ष और संवर्धक पथ द्वारा पुनर्नियोजन जाँचें तथा समुच्चय बदले बिना गलत सूचकांक अस्वीकार करें।

01

ऐप डाउनलोड करें

फ़ोल्डर चुनें और संपादन से पहले सहायक से संबंधित फ़ाइलें पढ़ने को कहें। काम का उद्देश्य और सीमाएँ बताएँ।

02

प्रोजेक्ट फ़ोल्डर खोलें

संगत endpoint चुनें। उपलब्ध उपकरण और उत्तरों की गुणवत्ता चुने गए मॉडल तथा सर्वर पर निर्भर करती है।

03

मॉडल जोड़ें और जाँचें

बदलाव और कमांड का आउटपुट देखें। परिणाम स्वीकार करने से पहले प्रोजेक्ट की जाँच चलाएँ; बनाया गया कोड अपने आप परीक्षण किया हुआ नहीं होता।

04

बदलाव देखें और परीक्षण चलाएँ

वास्तविक व्यवहार की अपेक्षित परिणाम से तुलना करें। जाँच असफल हो तो अगले बदलाव से पहले कारण समझें।

अधिकतम द्विभागीय मिलान

कार्यप्रवाह
def maximum_matching(edges, right_count):
    if type(right_count) is not int or not 0 <= right_count <= 32 or type(edges) not in (list, tuple) or len(edges) > 32:
        raise ValueError("matching.size")
    if any(type(row) not in (set, frozenset) or any(type(v) is not int or not 0 <= v < right_count for v in row) for row in edges):
        raise ValueError("matching.edge")
    owners = [-1] * right_count
    def augment(left, seen):
        for right in sorted(edges[left]):
            if right in seen:
                continue
            seen.add(right)
            if owners[right] == -1 or augment(owners[right], seen):
                owners[right] = left
                return True
        return False
    for left in range(len(edges)):
        augment(left, set())
    return sorted((left, right) for right, left in enumerate(owners) if left != -1)

लागू करने से पहले समीक्षा करें. बदलाव और कमांड का आउटपुट देखें। परिणाम स्वीकार करने से पहले प्रोजेक्ट की जाँच चलाएँ; बनाया गया कोड अपने आप परीक्षण किया हुआ नहीं होता।

AI के साथ कोड का कार्यक्षेत्र

आपका अगला विचार यहीं शुरू होता है।

Windows के लिए डाउनलोड करें ↗