NNeedleThyme
Pracovní postupy

Pracovní postupy s kódem · Nejkratší pokrývající podřetězce

03
Produkt

Pracovní postupy

Najdi nejkratší podřetězec se všemi požadovanými počty ve dvou textech do 1024 bodů kódu. Ověř prázdné požadavky a chybějící výsledek, zvol nejlevější shodu bez normalizace Unicode.

01

Stáhněte aplikaci

Vyberte složku a před úpravou nechte asistenta přečíst příslušné soubory. Určete cíl i hranice úkolu.

02

Otevřete složku projektu

Zvolte kompatibilní endpoint. Dostupné nástroje a kvalita odpovědí závisí na nastaveném modelu a serveru.

03

Připojte a otestujte model

Kontrolujte změny a výstupy příkazů. Před přijetím výsledku spusťte kontroly projektu; vytvořený kód není automaticky otestovaný.

04

Zkontrolujte změny a spusťte testy

Porovnejte skutečné chování s očekávaným výsledkem. Pokud kontrola selže, před dalšími změnami zjistěte příčinu.

Nejkratší pokrývající podřetězce

Pracovní postupy
from collections import Counter

def covering_window(text, required):
    if type(text) is not str or type(required) is not str or max(len(text), len(required)) > 1024:
        raise ValueError("window.input")
    if not required:
        return ""
    need, missing, left, best = Counter(required), len(required), 0, None
    for right, char in enumerate(text, 1):
        if need[char] > 0:
            missing -= 1
        need[char] -= 1
        while missing == 0:
            if best is None or right-left < best[1]-best[0]:
                best = (left, right)
            old = text[left]
            need[old] += 1
            if need[old] > 0:
                missing += 1
            left += 1
    return "" if best is None else text[best[0]:best[1]]

Před použitím zkontrolujte. Kontrolujte změny a výstupy příkazů. Před přijetím výsledku spusťte kontroly projektu; vytvořený kód není automaticky otestovaný.

Pracovní prostředí s AI pro kód

Váš další nápad začíná zde.

Stáhnout pro Windows ↗