MMatchOriel
Продукт

Можливості програми · Максимальне двочасткове паросполучення

01

MatchOriel поєднує дозволені пари та збільшувальні шляхи з проєктом для перевірки кожного запропонованого призначення.

01

Моделі

Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.

02

Проєкт

Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.

03

Зміни

Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.

Максимальне двочасткове паросполучення

● ● ●MatchOriel●
Сценарії · Максимальне двочасткове паросполучення ×
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)
✳Знайдіть паросполучення максимальної потужності між двома групами до 32 вершин за множинами дозволених ребер.
✓ ЗміниПеревірте перед застосуванням ↗
Ілюстрація робочого середовища
Робоче середовище з ШІ для коду

Тут починається ваша наступна ідея.

Завантажити для Windows ↗