Информатика, вопрос задал fifishka202068 , 6 лет назад

PYTHON PYTHON PYTHON
Напишите программу для решения следующей задачи.
На соревнованиях по бегу на 5000 метров для выхода в финал необходимо показать время не более 18 минут 30 секунд.
Сколько спортсменов по результатам соревнований вышли в финал?
Программа получает на вход количество спортсменов, принимавших участие в соревнованиях (1 ≤ N ≤ 100), затем для каждого спортсмена вводится два числа: минуты и секунды – время, показанное на дистанции.

Sample Input:

2
17 15
19 20
Sample Output:

1

Ответы на вопрос

Ответил L1ghtP1xel
0

n = 0

norm_time = "18 30".split() # Превращаем в список => ["18", "30"]

def minutes_to_seconds(time): # Принимает список, описанный выше

minutes = int(time[0])

seconds = int(time[1])

return (minutes*60 + seconds)

norm_time = minutes_to_seconds(norm_time) # Переводим 18 минут и 30 сек в секунды для удобного сравнения

while not ((n > 0) and (n <= 100)):

n = int(input("Количество спортсменов принимающих участие(1 ≤ N ≤ 100): "))

times = [] # Список с результатами спортсменов

for i in range(n): # Записываем результаты n-ого количества спортсменов

times.append(input(f"{i+1}: ").split())

count = 0

for time in times:

if minutes_to_seconds(time) <= norm_time:

count += 1

print(f"В финале {count} спортсмен(ов)!")

Приложения:
Новые вопросы