16

Решение: Время победителя регаты

ОГЭ · Информатика · Задание 16 · Основы программирования
ПовышеннаяФИПИ59429FРазвёрнутое решение≈ 10 минутРазбор в 4 шага
Условие

Участники парусной регаты стартовали одновременно. На финише фиксировалось время прохождения маршрута каждой яхтой (в часах и минутах). Определите время победителя регаты (в часах и минутах). Известно, что соревнования проходили в течение 12 часов.

Программа получает на вход количество яхт, принимавших участие в регате $N$ ($1 \leq N \leq 100$), затем для каждой яхты вводятся два числа: часы и минуты, затраченные на прохождение маршрута.

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

4 шага
1

Считываем количество яхт и устанавливаем большое начальное значение минимального времени.

$$min_time = 12 \cdot 60$$
2

Для каждой яхты переводим время прохождения из часов и минут в минуты.

$$t = 60h + m$$
3

Сравниваем полученное время с текущим минимумом и сохраняем меньшее значение.

$$min\_time = \min(min\_time, t)$$

Переводим минимальное время обратно в часы и минуты и выводим результат.

$$h = min\_time // 60,\quad m = min\_time \% 60$$
Ответ

n = int(input())
min_time = 12 * 60

for _ in range(n):
hours, minutes = map(int, input().split())
total_minutes = hours * 60 + minutes
if total_minutes < min_time:
min_time = total_minutes

print(min_time // 60, min_time % 60)

Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.

Где здесь ошибаются

Сравнивают отдельно часы и минуты, не переводя время в единую единицу измерения.

Используют обычное деление вместо целочисленного деления при восстановлении часов.

Выводят только минимальное число минут, а не часы и минуты.

Закрепить приёмВ теме «Основы программирования» ещё 153 задачи — с ответом и таким же разбором.
Тренироваться

Как решать задание 16 ОГЭ, информатика

Разбор этой задачи разложен на 4 шага: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Основы программирования»: в ней 154 задачи, и у каждой есть такой же разбор. Регистрация не нужна.