def queens(size):
if type(size) is not int or not 0 <= size <= 8:
raise ValueError("size.range")
result = []
def visit(columns, down, up):
row = len(columns)
if row == size:
result.append(tuple(columns))
return
for column in range(size):
if column not in columns and row-column not in down and row+column not in up:
visit(columns + [column], down | {row-column}, up | {row+column})
visit([], set(), set())
return result
✳Sıfırdan sekize kadar boyutlu tahtalarda saldırmayan vezir yerleşimlerini listeleyin.
✓ DeğişikliklerUygulamadan önce inceleyin ↗
Çalışma alanı çizimi
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.
Proje
Boş yerleşimi ve çözümsüz küçük tahtaları sınayın; geçersiz boyutları reddedip satır, sütun ve köşegenleri denetleyin.
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.
def queens(size):
if type(size) is not int or not 0 <= size <= 8:
raise ValueError("size.range")
result = []
def visit(columns, down, up):
row = len(columns)
if row == size:
result.append(tuple(columns))
return
for column in range(size):
if column not in columns and row-column not in down and row+column not in up:
visit(columns + [column], down | {row-column}, up | {row+column})
visit([], set(), set())
return result
Yapay zekâ ile kod çalışma alanı
Arama koduna geçerli sonucun açık tanımını verin
QueenVellum, arama yordamlarını ve çıktılarının sağlaması gereken koşulları inceleyen geliştiriciler için bir Windows yapay zekâ kodlama çalışma alanıdır. Proje klasörüyle başlayın; neyin çözüm sayıldığını, hangi girdilerin desteklendiğini ve uygulamanın boş sonucu nasıl gösterdiğini açıklayın. Bağlı asistan mevcut kodu inceleyip bu sözleşmeye göre değişiklik hazırlamaya yardım edebilir.
Sınırlı vezir yerleştirme görevi bu soruları somutlaştırır. Mevcut sıfırdan sekize tahta boyutu örneğini kullanarak kısıtların ve çıktı yapısının incelenmesini isteyin. Önerilen revizyonu kabul etmeden önce boş yerleştirme ile geçerli yerleştirmesi olmayan tahta arasındaki farkı tartışın. Amaç, anlamı görüşme boyunca görünür tutarak kendi arama kodunuzu geliştirmek ve test etmektir.
Yalnızca kaç sonuç çıktığını kontrol etmek yerine proje testlerinde döndürülen yapıları inceleyin. Her gerekli kısıtı doğrulayın, geçersiz girdi durumlarını çalıştırın ve kod değişikliklerini özgün görevle karşılaştırın. QueenVellum, uç noktanın sunduğu yerde filtresiz model dâhil desteklenen OpenAI uyumlu veya Anthropic bağlantılarına izin verir. Gerekli kimlik bilgilerini sağlayıp model bağlamını ve araç desteğini kontrol edin. Uygulama ve çıktıları bu gereksinimlere göre incelenene kadar ikna edici açıklama yalnızca öneridir.
Kısıtlı arama çalışmasını inceleme
Testler sayıyı mı yoksa dönen her çözümü mü kontrol etmeli?
Uygun olduğunda ikisini de kullanın. Tekil çıktılar bozuk veya tekrarlı olsa da sayı eşleşebilir. Testlerin çözümün anlamını ele alması için her yerleştirmeyi gerekli kısıtlara göre doğrulayın ve bilinen küçük durumları karşılaştırın.
Sıfır boyutu durumu nasıl gösterilmeli?
Kuralı açıkça belirtin. Mevcut senaryo boş bir yerleştirme içerir; bu hiç çözüm döndürmemekten farklıdır. Yeniden düzenlemenin uygulamanın ayırması gereken iki sonucu birleştirmemesi için çağıran kodun yorumunu inceleyin.
Temizlik sırasında desteklenen tahta boyutunu artırabilir miyim?
Bunu kendi incelemesini gerektiren ayrı gereksinim sayın. Mevcut örnek sınırlıdır. Aralığı değiştirmek beklenen işi ve çıktı boyutunu etkiler; küçük başarılı gösterimden büyük girdi desteği sonucu çıkarmayın.
Yeniden yazılan arama yordamını incelemeye ne yardımcı olur?
Bilinen küçük durumları, reddedilen girdileri ve yapısal kontrolleri birlikte tutun. Asistandan her dalın hangi kısıtları koruduğunu açıklamasını isteyin; ardından açıklamayı önerilen kaynakla ve kendi test çalıştırmanızın sonuçlarıyla karşılaştırın.