ควรปฏิเสธข้อมูลไม่เชื่อมต่อเสมอหรือไม่
เฉพาะเมื่อแอปต้องการโครงสร้างเดียวที่เชื่อมต่อกัน สำหรับผลแบบป่า องค์ประกอบที่ไม่เชื่อมต่ออาจใช้ได้ ระบุความต่างนี้ก่อนขอแก้ เพื่อไม่ให้ผู้ช่วยบังคับสร้างการเชื่อมต่อที่ข้อมูลเข้าไม่เคยให้
หาป่าแผ่ทั่วต่ำสุดสำหรับโหนดไม่เกิน 64 ตัวและเส้นเชื่อมจำนวนเต็มไม่เกิน 1024 เส้นที่มีน้ำหนักใน ±10^9.
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
เปรียบเทียบการทำงานจริงกับผลที่คาดหวัง หากการตรวจสอบไม่ผ่าน ให้หาสาเหตุก่อนแก้ไขเพิ่มเติม
ตั้งค่า endpoint ที่รองรับ OpenAI หรือ Anthropic ด้วย URL หลักและคีย์ API หากจำเป็น ทดสอบการเชื่อมต่อ เซิร์ฟเวอร์โมเดลในเครื่องต้องทำงานอยู่ เครื่องมือระยะไกลอาจส่งข้อมูลแยกต่างหาก
ทดสอบโหนดแยก เส้นขนาน วงตัวเอง และกรณีเสมอที่แน่นอน ปฏิเสธปลายผิดหรือบูลีนโดยไม่เปลี่ยนข้อมูล.
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
Forellin ให้พื้นที่เขียนโค้ดด้วย AI บน Windows สำหรับตรวจโค้ดประมวลผลกราฟร่วมกับแอปที่พึ่งพามัน เริ่มสนทนาโครงการด้วยรูปแบบข้อมูลเข้าและผลที่ฝั่งเรียกใช้ต้องการ ขอให้ผู้ช่วยตรวจการจัดการการเชื่อมต่อที่ขาด เส้นเชื่อมซ้ำ และลำดับผลก่อนเสนอแก้ไข ทางเลือกเหล่านี้กำหนดฟีเจอร์มากพอกับการคำนวณหลัก
บริบท spanning_forest.py ชี้ถึงงานที่โหนดไม่เชื่อมต่อเป็นสิ่งที่คาดไว้ แทนการมองว่าเป็นความพยายามเชื่อมทุกอย่างที่ล้มเหลว คุณอาจขอให้โมเดลอธิบายเส้นเชื่อมที่เลือกและผลรวมสัมพันธ์กับมันอย่างไร ตรวจคำตอบกับกราฟเล็กที่คำนวณเองได้ แล้วขอแพตช์เฉพาะจุดหากต้องปรับข้อกำหนดผลหรือการตรวจข้อมูล
รันการตรวจโครงการกับข้อมูลทั้งเชื่อมต่อและไม่เชื่อมต่อ และตรวจวิธีแทนโหนดโดดเดี่ยวในแอปโดยรอบ หากมีหลายผลที่ถูกต้อง ให้ตกลงว่าการเลือกแบบให้ผลซ้ำเดิมสำคัญต่อฝั่งใช้ผลหรือไม่ Forellin รับปลายทาง OpenAI-compatible หรือ Anthropic ที่รองรับ พร้อมข้อมูลรับรองเมื่อจำเป็น เลือกโมเดล AI ไร้การกรองได้เมื่อมีให้ แต่ข้อจำกัด เครื่องมือ และความจุบริบทยังขึ้นกับบริการที่ตั้งค่า พื้นที่ทำงานช่วยการสืบค้น ส่วนตัวอย่างกราฟและผลทดสอบรองรับการยอมรับโค้ด
เฉพาะเมื่อแอปต้องการโครงสร้างเดียวที่เชื่อมต่อกัน สำหรับผลแบบป่า องค์ประกอบที่ไม่เชื่อมต่ออาจใช้ได้ ระบุความต่างนี้ก่อนขอแก้ เพื่อไม่ให้ผู้ช่วยบังคับสร้างการเชื่อมต่อที่ข้อมูลเข้าไม่เคยให้
ตัดสินใจว่ายอมรับคำตอบเหมาะที่สุดที่ถูกต้องชุดใดก็ได้ หรือฝั่งใช้ผลต้องการการเลือกที่ซ้ำเดิม หากลำดับหรือพฤติกรรมกรณีเสมอสำคัญ ให้เป็นส่วนหนึ่งของผลคาดหวังและทดสอบชัดเจน แทนการพึ่งลำดับข้อมูลเข้าโดยบังเอิญ
ใช้ตัวอย่างเล็กและเทียบเส้นเชื่อมที่เลือกกับผลบวกน้ำหนักอย่างอิสระ ตรวจด้วยว่าฝั่งเรียกใช้ต้องการแค่ผลรวมหรือโครงสร้างที่เลือก เพราะผลสองแบบรองรับพฤติกรรมแอปต่างกัน
โหนดอาจหายจากผลที่มีเฉพาะเส้นเชื่อมแม้ข้อมูลเข้ามีโหนดนั้น ตรวจรูปแบบแทนข้อมูลโดยรอบและตัดสินใจว่าแอปควรเก็บหรือแสดงโหนดอย่างไร แทนการสมมติว่าเส้นเชื่อมที่เลือกอธิบายทุกจุดยอด
Forellin · อัปเดต 2026-10-25