Sposoby pracy · Ograniczone rozmieszczenia hetmanów ×
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
✳Wylicz nieatakujące rozmieszczenia hetmanów na planszach rozmiaru od zera do ośmiu.
✓ ZmianySprawdź przed zastosowaniem ↗
Ilustracja środowiska
Modele
Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.
Projekt
Sprawdź pusty układ i małe plansze bez rozwiązania, odrzucając błędne rozmiary i kontrolując wiersze, kolumny oraz przekątne.
Sprawdź przed zastosowaniem
Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.
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
Środowisko programowania z AI
Daj kodowi wyszukiwania jasną definicję poprawnego wyniku
QueenVellum to środowisko programistyczne AI dla Windows dla twórców przeglądających procedury wyszukiwania i warunki, które muszą spełniać ich wyniki. Zacznij od folderu projektu i wyjaśnij, co stanowi rozwiązanie, jakie dane są obsługiwane i jak aplikacja reprezentuje pusty wynik. Podłączony asystent może sprawdzić obecny kod i pomóc przygotować zmianę zgodną z tym kontraktem.
Ograniczone zadanie rozmieszczania hetmanów konkretyzuje te pytania. Poproś o przegląd ograniczeń i struktury wyjścia na istniejącym przykładzie rozmiarów planszy od zera do ośmiu. Przed przyjęciem proponowanej zmiany omów różnicę między pustym ustawieniem a planszą bez poprawnych ustawień. Chodzi o rozwijanie i testowanie własnego kodu wyszukiwania, którego znaczenie pozostaje widoczne przez całą rozmowę.
Sprawdzaj zwracane struktury w testach projektu, zamiast kontrolować tylko liczbę wyników. Zweryfikuj każde wymagane ograniczenie, uruchom przypadki błędnych danych i porównaj zmiany kodu z pierwotnym zadaniem. QueenVellum umożliwia obsługiwane połączenia zgodne z OpenAI lub połączenia Anthropic, w tym model bez filtrów, gdy oferuje go punkt końcowy. Podaj wymagane dane uwierzytelniające i sprawdź kontekst modelu oraz obsługę narzędzi. Przekonujące wyjaśnienie pozostaje propozycją, dopóki implementacja i wyniki nie zostaną ocenione względem tych wymagań.
Przegląd wyszukiwania z ograniczeniami
Czy testy powinny sprawdzać liczbę, czy każde zwrócone rozwiązanie?
Używaj obu metod, gdy to właściwe. Liczba może się zgadzać, nawet gdy pojedyncze wyniki są błędne lub powtórzone. Zweryfikuj każde ustawienie względem wymaganych ograniczeń i porównaj znane małe przypadki, aby testy dotyczyły znaczenia rozwiązania.
Jak reprezentować przypadek zerowego rozmiaru?
Jawnie określ konwencję. Istniejący scenariusz obejmuje puste ustawienie, co różni się od braku rozwiązań. Sprawdź interpretację kodu wywołującego, aby refaktoryzacja nie połączyła dwóch wyników, które aplikacja musi rozróżniać.
Czy mogę zwiększyć obsługiwany rozmiar planszy podczas porządkowania?
Traktuj to jako osobne wymaganie z własnym przeglądem. Obecny przykład ma ograniczenia. Zmiana zakresu wpływa na oczekiwaną pracę i rozmiar wyjścia, więc nie wnioskuj o obsłudze większych wejść z małej udanej demonstracji.
Co pomaga ocenić przepisaną procedurę wyszukiwania?
Zachowaj razem małe znane przypadki, odrzucane wejścia i kontrole strukturalne. Poproś asystenta o wyjaśnienie, jakie ograniczenia zachowuje każda gałąź, a potem porównaj to wyjaśnienie z proponowanym kodem i wynikami własnego uruchomienia testów.