SSpanKestrel
Espace de développement avec IA

Somme contiguë maximale

Trouvez la somme contiguë maximale parmi 1000 entiers au plus, bornés en valeur absolue à un milliard, avec somme et bornes exclusives.

● ● ●SpanKestrel●
Méthodes de travail · Somme contiguë maximale ×
def maximum_subarray(values):
    if type(values) not in (list, tuple) or len(values) > 1000 or any(type(v) is not int or abs(v) > 10**9 for v in values):
        raise ValueError("subarray.input")
    if not values:
        return None
    best = None
    total, start = 0, 0
    for end, value in enumerate(values, 1):
        if total < 0:
            total, start = 0, end - 1
        total += value
        candidate = (total, start, end)
        if best is None or (-total, start, end) < (-best[0], best[1], best[2]):
            best = candidate
    return best
✳Trouvez la somme contiguë maximale parmi 1000 entiers au plus, bornés en valeur absolue à un milliard, avec somme et bornes exclusives.
✓ ModificationsVérifiez avant d’appliquer ↗
Illustration de l’espace de travail
Modèles
Configurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.
Projet
Testez les valeurs toutes négatives et l’entrée vide, en départageant par le premier début puis la première fin.
Vérifiez avant d’appliquer
Comparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.
Méthodes de travail

Somme contiguë maximale

Méthodes de travail ↗
Méthodes de travail
def maximum_subarray(values):
    if type(values) not in (list, tuple) or len(values) > 1000 or any(type(v) is not int or abs(v) > 10**9 for v in values):
        raise ValueError("subarray.input")
    if not values:
        return None
    best = None
    total, start = 0, 0
    for end, value in enumerate(values, 1):
        if total < 0:
            total, start = 0, end - 1
        total += value
        candidate = (total, start, end)
        if best is None or (-total, start, end) < (-best[0], best[1], best[2]):
            best = candidate
    return best
Espace de développement avec IA

Votre prochaine idée commence ici.

Télécharger pour Windows ↗