LLineCitrine
Sposoby pracy

Praca z kodem · Łamanie wierszy o minimalnej nierówności

03
Produkt

Sposoby pracy

Podziel najwyżej 100 słów bez białych znaków na wiersze od jednego do 80 punktów kodowych, minimalizując kwadrat wolnego miejsca poza ostatnim wierszem. Sprawdź pusty zbiór i konkurujące podziały, odrzucając puste lub za długie słowa bez deklarowania szerokości terminala.

01

Pobierz aplikację

Wybierz folder i poproś asystenta o przeczytanie odpowiednich plików przed ich zmianą. Określ cel oraz granice zadania.

02

Otwórz folder projektu

Wybierz zgodny endpoint. Dostępne narzędzia i jakość odpowiedzi zależą od skonfigurowanego modelu i serwera.

03

Podłącz i sprawdź model

Sprawdzaj zmiany i wyniki poleceń. Uruchom testy projektu przed zaakceptowaniem rezultatu; wygenerowany kod nie jest automatycznie przetestowany.

04

Przejrzyj zmiany i uruchom testy

Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.

Łamanie wierszy o minimalnej nierówności

Sposoby pracy
def wrap_words(words, width):
    words = tuple(words)
    if type(width) is not int or not 1 <= width <= 80 or len(words) > 100:
        raise ValueError("wrap.limit")
    if any(type(w) is not str or not w or len(w) > width or any(c.isspace() for c in w) for w in words):
        raise ValueError("wrap.word")
    n = len(words)
    costs, ends = [0] * (n+1), [0] * n
    for i in range(n-1, -1, -1):
        used, best = 0, None
        for j in range(i, n):
            used += len(words[j]) + (j > i)
            if used > width:
                break
            cost = 0 if j == n-1 else (width-used)**2 + costs[j+1]
            if best is None or cost < best:
                best, ends[i] = cost, j+1
        costs[i] = best
    lines, i = [], 0
    while i < n:
        lines.append(" ".join(words[i:ends[i]]))
        i = ends[i]
    return lines

Sprawdź przed zastosowaniem. Sprawdzaj zmiany i wyniki poleceń. Uruchom testy projektu przed zaakceptowaniem rezultatu; wygenerowany kod nie jest automatycznie przetestowany.

Środowisko programowania z AI

Tutaj zaczyna się kolejny pomysł.

Pobierz dla Windows ↗