Liczba podziałów całkowitych
Policz nieuporządkowane podziały liczby całkowitej od zera do 300 na części dodatnie.
def partition_count(number):
if type(number) is not int or not 0 <= number <= 300:
raise ValueError("integer 0 through 300")
ways = [1] + [0]*number
for part in range(1, number+1):
for total in range(part, number+1):
ways[total] += ways[total-part]
return ways[number]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ź jeden pusty podział zera i powtarzające się części, odrzucając liczby ujemne, ułamki i wartości logiczne.
Sprawdź przed zastosowaniem
Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.
def partition_count(number):
if type(number) is not int or not 0 <= number <= 300:
raise ValueError("integer 0 through 300")
ways = [1] + [0]*number
for part in range(1, number+1):
for total in range(part, number+1):
ways[total] += ways[total-part]
return ways[number]Ustal, co jest zliczane, zanim zmienisz kod
Partenum udostępnia środowisko programowania z AI dla Windows do prac związanych ze zliczaniem, w którym wymaganie pozostaje obok realizującego je kodu. Otwórz projekt i wyjaśnij, co oznacza pojedynczy wynik, czy kolejność ma znaczenie i jakie dane dopuszcza kod wywołujący. Zanim poprosisz o uproszczenie, zleć podłączonemu modelowi odczytanie implementacji z uwzględnieniem tych definicji.
Przykład partycji liczby całkowitej pozwala skonkretyzować przegląd. Zliczanie nieuporządkowanych partycji wymaga innej interpretacji niż wyliczanie uporządkowanych układów. W ramach tego rozróżnienia omów wartość początkową i wynik dla zera. Zmiana proponowana przez asystenta powinna odpowiadać definicji używanej przez aplikację, zamiast zastępować ją znaną zależnością rekurencyjną o innym znaczeniu.
Sprawdź małe przypadki referencyjne we własnym środowisku, a następnie przejrzyj obsługiwaną górną granicę i zachowanie dla nieprawidłowych danych. Po obejrzeniu poprawki uruchom odpowiednie testy, w tym przypadek reprezentujący pustą partycję. Partenum łączy się z obsługiwanymi punktami końcowymi zgodnymi z OpenAI lub punktami Anthropic, z wymaganym uwierzytelnianiem. Wybierz model bez ograniczeń tam, gdzie jest dostępny, i potwierdź narzędzia oraz limity kontekstu serwera. Ten proces pracy służy tworzeniu zrozumiałych, sprawdzonych zmian, a przykładowy problem zliczania dostarcza konkretnego wymagania do analizy.
Pytania dotyczące zmiany logiki zliczania
Dlaczego określać, czy kolejność ma znaczenie?
Różne interpretacje mogą dawać różne poprawne liczby dla tych samych danych. Podaj mały przykład rozróżniający zamierzoną regułę i oceń proponowany kod względem niego, aby pozornie rozsądny zamiennik nie rozwiązywał innego problemu.
Co powinien ustalić test dla zera?
Powinien ustalić wybrany przypadek bazowy, w tym to, czy pusta partycja jest liczona raz. Zapisz to oczekiwanie jawnie w przypadku testowym i dokumentacji, ponieważ późniejsze wyniki mogą od niego zależeć, nawet gdy zwykłe dane dają poprawne wyniki.
Czy w celu sprawdzenia liczby należy wyliczyć każdy obiekt?
Małe jawne przykłady mogą pomóc, ale pokazane zadanie oblicza liczby bez konstruowania każdej partycji. Używaj niewielkich przypadków referencyjnych i sprawdzaj znaczenie implementacji. Nie dodawaj alokowania wynikowych obiektów tylko dlatego, że asystent proponuje inną metodę weryfikacji.
Jak ocenić obsługiwany zakres?
Sprawdź deklarowane granice danych i obsługę odrzuconych wartości w kodzie wywołującym. Zachowaj testy liczb ujemnych, ułamkowych i wartości logicznych. Każde rozszerzenie obecnego kontraktu wymaga osobnej decyzji o oczekiwanym zachowaniu aplikacji.
Partenum · Zaktualizowano 2026-10-25