4.1a Najdłuższy okres bez opadów w wycinku
Matura próbna grudzień 2022 - Matura z informatyki: arkusze krok po kroku (Python)
Zadanie 4.1a (1 pkt): najdłuższy okres bez opadów (dni z zerem) z datą początku i końca. Licznik `run` rośnie w dni bez wody i zeruje się w dni z opadem; przy nowym rekordzie początek to dzień sprzed `run - 1` dni. Dla wycinka: 13 dni, od 20.05.2022 do 01.06.2022.
from datetime import date
days = [] # (data, litry zebranej wody)
with open("ekodom_przyklad.txt") as f:
f.readline() # wiersz nagłówkowy
for line in f:
text, water = line.split("\t")
day = date(int(text[6:10]), int(text[3:5]), int(text[0:2])) # dd.mm.rrrr
days.append((text, day, int(water)))
# 4.1a najdłuższy ciąg dni bez opadów (0 litrów)
best, best_start, best_end = 0, "", ""
run = 0
for k, (text, day, water) in enumerate(days):
if water == 0:
run = run + 1
if run > best:
best, best_start, best_end = run, days[k - run + 1][0], text
else:
run = 0
print("4.1a", best, best_start, best_end)Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Matura z informatyki: arkusze krok po kroku·Zaloguj się, aby zapisać postęp na koncie.