def max_task_hours(n, k, t, schedule):
ilosc_spotkan = 0
for x in range(n):
if schedule[x] == "1" or schedule[x] == "2":
ilosc_spotkan += 1
if k >= ilosc_spotkan:
return n
if schedule[0] == "1" or schedule[n - 1] == "1":
return -1
if t * 2 >= n:
return -1
task_hours = 0
missed_meetings = 0
for i in range(n):
if schedule[i] == "1":
if missed_meetings < k:
missed_meetings += 1
task_hours += 1
else:
return -1
elif schedule[i] == "2":
task_hours += 1
elif schedule[i] == "3":
pass
return task_hours
# Pobranie danych wejściowych od użytkownika
n, k, t = map(int, input().split())
schedule = input()
# Wywołanie funkcji i wyświetlenie wyniku
result = max_task_hours(n, k, t, schedule)
print(result)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | def max_task_hours(n, k, t, schedule): ilosc_spotkan = 0 for x in range(n): if schedule[x] == "1" or schedule[x] == "2": ilosc_spotkan += 1 if k >= ilosc_spotkan: return n if schedule[0] == "1" or schedule[n - 1] == "1": return -1 if t * 2 >= n: return -1 task_hours = 0 missed_meetings = 0 for i in range(n): if schedule[i] == "1": if missed_meetings < k: missed_meetings += 1 task_hours += 1 else: return -1 elif schedule[i] == "2": task_hours += 1 elif schedule[i] == "3": pass return task_hours # Pobranie danych wejściowych od użytkownika n, k, t = map(int, input().split()) schedule = input() # Wywołanie funkcji i wyświetlenie wyniku result = max_task_hours(n, k, t, schedule) print(result) |
English