FForellin
Pracovní prostředí s AI pro kód

Minimální kostrové lesy

Najděte minimální kostrový les pro nejvýše 64 uzlů a 1024 hran s celočíselnými vahami v ±10^9.

● ● ●Forellin●
Pracovní postupy · Minimální kostrové lesy ×
def spanning_forest(count, edges):
    if type(count) is not int or not 0 <= count <= 64 or type(edges) is not list or len(edges) > 1024:
        raise ValueError("forest.input")
    ordered = []
    for edge in edges:
        if type(edge) not in (list, tuple) or len(edge) != 3 or any(type(x) is not int for x in edge):
            raise ValueError("forest.edge")
        a, b, weight = edge
        if not 0 <= a < count or not 0 <= b < count or abs(weight) > 10**9:
            raise ValueError("forest.bounds")
        ordered.append((weight, min(a, b), max(a, b)))
    parent = list(range(count))
    def root(node):
        while parent[node] != node:
            parent[node] = parent[parent[node]]
            node = parent[node]
        return node
    selected, total = [], 0
    for weight, a, b in sorted(ordered):
        x, y = root(a), root(b)
        if x != y:
            parent[x] = y
            selected.append((a, b, weight))
            total += weight
    return total, selected
✳Minimální kostrové lesy
✓ ZměnyPřed použitím zkontrolujte ↗
Ilustrace pracovního prostředí
  1. Před použitím zkontrolujte

    Porovnejte skutečné chování s očekávaným výsledkem. Pokud kontrola selže, před dalšími změnami zjistěte příčinu.

  2. Modely

    Nastavte endpoint kompatibilní s OpenAI nebo Anthropic pomocí základní URL a případného API klíče. Otestujte připojení. Lokální server modelu musí běžet; vzdálené nástroje mohou data odesílat samostatně.

  3. Projekt

    Otestujte oddělené uzly, paralelní hrany, smyčky a deterministické shody, odmítněte chybné konce a logické hodnoty bez změny vstupu.

Pracovní postupy

Minimální kostrové lesy

Pracovní postupy ↗
Pracovní postupy
def spanning_forest(count, edges):
    if type(count) is not int or not 0 <= count <= 64 or type(edges) is not list or len(edges) > 1024:
        raise ValueError("forest.input")
    ordered = []
    for edge in edges:
        if type(edge) not in (list, tuple) or len(edge) != 3 or any(type(x) is not int for x in edge):
            raise ValueError("forest.edge")
        a, b, weight = edge
        if not 0 <= a < count or not 0 <= b < count or abs(weight) > 10**9:
            raise ValueError("forest.bounds")
        ordered.append((weight, min(a, b), max(a, b)))
    parent = list(range(count))
    def root(node):
        while parent[node] != node:
            parent[node] = parent[parent[node]]
            node = parent[node]
        return node
    selected, total = [], 0
    for weight, a, b in sorted(ordered):
        x, y = root(a), root(b)
        if x != y:
            parent[x] = y
            selected.append((a, b, weight))
            total += weight
    return total, selected
Pracovní prostředí s AI pro kód

Zahrňte nesouvislé vstupy do specifikace grafového softwaru

Forellin poskytuje vývojářům programovací prostředí s AI pro Windows k prozkoumání kódu zpracování grafů spolu s aplikací, která na něm závisí. Začněte projektovou konverzaci reprezentací vstupu a výsledkem potřebným pro volajícího. Před návrhem změny nechte asistenta prozkoumat zacházení s chybějícími spojeními, opakovanými hranami a pořadím výstupu. Tyto volby utvářejí funkci stejně jako hlavní výpočet.

Kontext spanning_forest.py naznačuje úlohu, v níž jsou nespojené vrcholy očekávané, nikoli považované za neúspěšný pokus propojit vše. Můžete model požádat o vysvětlení výběru hran a vztahu celkové hodnoty k nim. Odpověď posuďte na malém grafu, který můžete ručně ověřit, a pokud specifikace výsledku či validace vyžaduje úpravu, požádejte o cílenou opravu.

Spusťte kontroly projektu se souvislými i nesouvislými vstupy a prozkoumejte reprezentaci izolovaných vrcholů v okolní aplikaci. Existuje-li více platných výsledků, dohodněte se, zda příjemci záleží na deterministickém výběru. Forellin přijímá podporované koncové body kompatibilní s OpenAI nebo koncové body Anthropic, podle potřeby s přihlašovacími údaji. Nefiltrovaný model AI lze zvolit, je-li nabízen, ale omezení modelu, nástroje a kapacita kontextu nadále závisejí na nastavené službě. Pracovní prostředí podporuje zkoumání; příklady grafů a výsledky testů podporují přijetí kódu.

Otázky ke změně zpracování grafů

Má se nesouvislý vstup vždy odmítnout?

Pouze pokud aplikace vyžaduje jedinou souvislou strukturu. Pro výsledek ve formě lesa mohou být nesouvislé komponenty platné. Před požadavkem na opravu tento rozdíl určete, aby asistent nevynucoval spojení, která vstup vůbec neposkytl.

Co když má více výběrů hran stejnou celkovou hodnotu?

Rozhodněte, zda je přijatelné libovolné platné optimum, nebo příjemce potřebuje opakovatelný výběr. Pokud záleží na pořadí či rozhodování při shodě, zahrňte je do očekávaného výsledku a výslovně otestujte místo spoléhání na náhodné pořadí vstupu.

Jak ověřím hlášenou celkovou hodnotu?

Použijte malý příklad a nezávisle porovnejte vybrané hrany se součtem jejich vah. Prověřte také, zda volající očekává pouze součet, nebo vybranou strukturu, protože tyto výstupy umožňují různé chování aplikace.

Proč testovat izolované vrcholy zvlášť?

Z výsledku tvořeného jen hranami mohou zmizet, i když je vstup obsahuje. Ověřte okolní reprezentaci a rozhodněte, jak je má aplikace uchovat či zobrazit, místo předpokladu, že vybrané hrany popisují všechny vrcholy.

Stáhnout pro Windows ↗

Forellin · Aktualizováno 2026-10-25