FForellin
Yapay zekâ ile kod çalışma alanı

En küçük kapsayan ormanlar

En fazla 64 düğüm ve ±10^9 içinde tamsayı ağırlıklı 1024 kenar için en küçük kapsayan ormanı bulun.

● ● ●Forellin●
İş akışları · En küçük kapsayan ormanlar ×
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
✳En küçük kapsayan ormanlar
✓ DeğişikliklerUygulamadan önce inceleyin ↗
Çalışma alanı çizimi
  1. Uygulamadan önce inceleyin

    Gerçek davranışı beklenen sonuçla karşılaştırın. Bir kontrol başarısız olursa yeni değişikliklerden önce nedenini araştırın.

  2. Modeller

    Temel URL ve gerekiyorsa API anahtarıyla OpenAI uyumlu veya Anthropic endpoint yapılandırın. Bağlantıyı test edin. Yerel model sunucusu çalışıyor olmalıdır; uzak araçlar ayrıca veri aktarabilir.

  3. Proje

    Ayrık düğümleri, paralel kenarları, döngü kenarlarını ve belirli eşitlik seçimlerini test edip geçersiz uçları ve Boolean değerleri girdiyi değiştirmeden reddedin.

İş akışları

En küçük kapsayan ormanlar

İş akışları ↗
İş akışları
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
Yapay zekâ ile kod çalışma alanı

Bağlantısız girdileri çizge yazılımı sözleşmesine dahil edin

Forellin, geliştiricilere çizge işleme kodunu ona dayanan uygulamayla birlikte incelemek için bir Windows yapay zekâ kodlama çalışma alanı verir. Proje görüşmesine girdi gösterimi ve çağıran kodun ihtiyaç duyduğu sonuçla başlayın. Asistandan değişiklik önermeden önce uygulamanın eksik bağlantıları, yinelenen kenarları ve çıktı sırasını nasıl işlediğini incelemesini isteyin. Bu seçimler, özellik üzerinde temel hesaplama kadar belirleyicidir.

spanning_forest.py bağlamı, bağlantısız düğümlerin her şeyi bağlamada başarısızlık sayılmak yerine beklendiği bir görev önerir. Modelden hangi kenarların seçildiğini ve toplamın bunlarla ilişkisini açıklamasını isteyebilirsiniz. Yanıtı elle kontrol edebileceğiniz küçük bir çizgeyle karşılaştırın; sonuç sözleşmesi veya doğrulama ayar gerektiriyorsa odaklı bir yama isteyin.

Bağlantılı ve bağlantısız girdilerde proje kontrollerini çalıştırın ve çevreleyen uygulamanın yalıtılmış düğümleri nasıl temsil ettiğini inceleyin. Birden çok geçerli sonuç varsa tüketici için belirlenimci seçimin önemini kararlaştırın. Forellin, gerektiğinde kimlik bilgileriyle desteklenen OpenAI uyumlu veya Anthropic uç noktalarını kabul eder. Filtresiz yapay zekâ modeli sunulduğunda seçilebilir; ancak model kısıtlamaları, araçlar ve bağlam kapasitesi yapılandırılan hizmete bağlıdır. Çalışma alanı araştırmanızı destekler; kodu kabul etmenizi çizge örnekleri ve test sonuçları destekler.

Çizge işleme değişikliği için sorular

Bağlantısız girdi her zaman reddedilmeli mi?

Yalnızca uygulama tek bir bağlantılı yapı gerektiriyorsa. Orman sonucunda bağlantısız bileşenler geçerli olabilir. Asistanın girdinin hiç sağlamadığı bağlantıları zorlamaması için düzeltme istemeden önce bu ayrımı belirtin.

Birden çok kenar seçimi aynı toplamı verirse ne olur?

Herhangi bir geçerli optimumun kabul edilip edilmediğini veya tüketicinin tekrarlanabilir seçime ihtiyaç duyup duymadığını kararlaştırın. Sıralama veya eşitlik davranışı önemliyse tesadüfi girdi sırasına dayanmak yerine beklenen sonuca dahil edin ve açıkça test edin.

Bildirilen toplamı nasıl kontrol ederim?

Küçük bir örnek kullanıp seçilen kenarları ağırlıklarının toplamıyla bağımsız karşılaştırın. Çağıran kodun yalnızca toplamı mı yoksa seçilen yapıyı mı beklediğini de inceleyin; bu çıktılar farklı uygulama davranışlarını destekler.

Yalıtılmış düğümler neden ayrı test edilmeli?

Girdi bunları içerse bile yalnızca kenarlardan oluşan sonuçtan kaybolabilirler. Çevreleyen gösterimi kontrol edin ve seçilen kenarların her köşeyi tanımladığını varsaymak yerine uygulamanın bu düğümleri nasıl saklayıp göstereceğini kararlaştırın.

Windows için indir ↗

Forellin · Güncellendi 2026-10-25