การเดินนิมตามกติกาปกติ
เลือกการลดกองที่ชนะสำหรับนิมกติกาปกติจากไม่เกิน 128 กองที่มีศูนย์ถึงหนึ่งพันล้านชิ้น.
def nim_move(piles):
if type(piles) not in (list, tuple) or len(piles) > 128 or any(type(v) is not int or not 0 <= v <= 10**9 for v in piles):
raise ValueError("nim.piles")
balance = 0
for pile in piles:
balance ^= pile
if balance == 0:
return None
for index, pile in enumerate(piles):
reduced = pile ^ balance
if reduced < pile:
return index, reducedโปรเจกต์
ทดสอบตำแหน่งศูนย์ทั้งหมดและแพ้ คืนว่าไม่มีตาเดินเมื่อ xor เป็นศูนย์และปฏิเสธขนาดลบหรือบูลีน.
ตรวจสอบก่อนนำไปใช้
เปรียบเทียบการทำงานจริงกับผลที่คาดหวัง หากการตรวจสอบไม่ผ่าน ให้หาสาเหตุก่อนแก้ไขเพิ่มเติม
โมเดล
ตั้งค่า endpoint ที่รองรับ OpenAI หรือ Anthropic ด้วย URL หลักและคีย์ API หากจำเป็น ทดสอบการเชื่อมต่อ เซิร์ฟเวอร์โมเดลในเครื่องต้องทำงานอยู่ เครื่องมือระยะไกลอาจส่งข้อมูลแยกต่างหาก
def nim_move(piles):
if type(piles) not in (list, tuple) or len(piles) > 128 or any(type(v) is not int or not 0 <= v <= 10**9 for v in piles):
raise ValueError("nim.piles")
balance = 0
for pile in piles:
balance ^= pile
if balance == 0:
return None
for index, pile in enumerate(piles):
reduced = pile ^ balance
if reduced < pile:
return index, reducedนำการเปลี่ยนกฎไปให้ถึงแอปที่ใช้งานจริง
NimClover เป็นพื้นที่เขียนโค้ดด้วย AI บน Windows สำหรับพัฒนาซอฟต์แวร์ที่มีกฎและการตัดสินใจชัดเจน เลือกโฟลเดอร์โครงการและอธิบายกฎที่ต้องสร้างหรือแก้ ผู้ช่วยที่เชื่อมต่อตรวจซอร์สที่เกี่ยวข้องและหารือข้อเสนอได้ โดยการสนทนาคงข้อมูลเข้าที่ยอมรับและผลที่สังเกตได้ไว้ให้คุณตรวจ
ตัวอย่าง nim.py ใช้ประกอบงานเลือกตาเดินตามกติกาเล่นปกติได้ ถามว่าแอปแทนตาเดินอย่างไร ทำอะไรเมื่อฟังก์ชันช่วยไม่คืนตัวเลือก และกฎที่ใช้อยู่ตรงกับสมมติฐานของฟังก์ชันหรือไม่ ใช้คำถามเหล่านี้ตรวจโครงการของคุณ เพื่อเปลี่ยนฟังก์ชันตัวอย่างเล็ก ๆ ให้เป็นงานเชื่อมต่อซอฟต์แวร์ แทนการอ้างว่าพื้นที่ทำงานมีเอนจินเกมมาด้วย
สำหรับการเลือกโมเดล AI ไร้ข้อจำกัด ให้เชื่อมต่อโมเดลที่มีผ่านปลายทางที่รองรับ OpenAI-compatible หรือ Anthropic ให้ข้อมูลรับรองเมื่อจำเป็นและตรวจความสามารถจริง หลังตรวจการแก้ไขที่เสนอ ให้ทดสอบทั้งตาเดินที่คืนมาและเส้นทางไม่มีตัวเลือกผ่านฝั่งเรียกใช้ ยืนยันว่าการเปลี่ยนสถานะตรงกับรูปแบบค่าที่คืน ผลที่มีประโยชน์คือฟีเจอร์ในแอปที่สอดคล้องและมีการตรวจรองรับ ไม่ใช่อัลกอริทึมโดดเดี่ยวที่ส่งผลไปยังหน้าจอไม่ถูกต้อง
คำถามสำหรับเชื่อมต่อการตัดสินใจตามกฎ
ไม่มีตาเดินที่เลือกหมายความว่าไม่มีตาเดินที่ถูกกติกาหรือไม่
ไม่จำเป็น ตีความค่าคืนของฟังก์ชันตามข้อกำหนดและสถานะปัจจุบันของเกม ถามว่าฝั่งเรียกใช้แยกกลยุทธ์จากความถูกกติกาอย่างไรก่อนแปลงการไม่มีตัวเลือกเป็นข้อความหรือจบการโต้ตอบ
ควรระบุอะไรเกี่ยวกับกติกา
ระบุเงื่อนไขชนะและกฎรูปแบบย่อยที่มีผลต่อการตัดสินใจที่ถูกต้อง ตัวอย่างสมมติการเล่นปกติ กฎตาสุดท้ายที่ต่างกันต้องใช้เหตุผลและการตรวจแยก ไม่ใช่ใช้ฟังก์ชันเดิมเพียงเปลี่ยนป้ายบนหน้าจอ
ควรทดสอบตาเดินที่คืนมาอย่างไร
ตรวจว่ารายการที่ระบุมีอยู่ ค่าใหม่ได้รับอนุญาต และฝั่งเรียกใช้นำไปใช้ตามเจตนา รวมสถานะแอปที่เกิดขึ้น คู่ค่าที่ถูกต้องจากฟังก์ชันไม่ได้ยืนยันว่าหน้าจอแก้รายการที่ถูกต้อง
ขั้นตอนนี้ขยายเป็นเกมสมบูรณ์ได้หรือไม่
คุณพัฒนาฟีเจอร์เพิ่มผ่านงานที่กำหนดขอบเขตเพิ่มเติมได้ กำหนดการวาดภาพ รับข้อมูล และเปลี่ยนสถานะแยกกันแล้วทดสอบการเชื่อมต่อ พื้นที่เขียนโค้ดและตัวอย่างกลยุทธ์ไม่ได้ยืนยันว่าฟีเจอร์เหล่านั้นสร้างไว้แล้ว
NimClover · อัปเดต 2026-10-25