AI-werkruimte voor code
Maximale aaneengesloten som
Zoek de maximale aaneengesloten som in maximaal 1000 gehele getallen met absolute waarde tot een miljard, inclusief som en exclusieve grenzen.
● ● ●SpanKestrel●
Werkprocessen · Maximale aaneengesloten som ×
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✳Zoek de maximale aaneengesloten som in maximaal 1000 gehele getallen met absolute waarde tot een miljard, inclusief som en exclusieve grenzen.
✓ WijzigingenControleer vóór het toepassen ↗
Illustratie van de werkruimte
- Modellen
- Stel een OpenAI-compatibel of Anthropic-endpoint in met de basis-URL en zo nodig een API-sleutel. Test de verbinding. Een lokale modelserver moet actief zijn; externe hulpmiddelen kunnen apart gegevens versturen.
- Project
- Test uitsluitend negatieve waarden en lege invoer, beslis gelijke uitkomsten op vroegste begin en daarna vroegste einde.
- Controleer vóór het toepassen
- Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen.
Werkprocessen
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