Вопрос задан 02.09.2020 в 11:14. Предмет Информатика. Спрашивает Клыкова Арина.

Помогите построить блок схему к задаче После очередного этапа чемпионата мира по кольцевым

автогонкам на автомобилях с открытыми колесами Формула-А гонщики собрались вместе в кафе, чтобы обсудить полученные результаты. Они вспомнили, что в молодости соревновались не на больших болидах, а на картах – спортивных автомобилях меньших размеров. Друзья решили выяснить победителя в одной из гонок на картах. Победителем гонки являлся тот гонщик, у которого суммарное время прохождения всех кругов трассы было минимальным. Поскольку окончательные результаты не сохранились, то каждый из n участников той гонки вспомнил и выписал результаты прохождения каждого из m кругов трассы. К сожалению, гонщикам было сложно вычислить победителя той гонки. В связи с этим они попросили сделать это вас. Требуется написать программу, которая вычислит победителя гонки на картах, о которой говорили гонщики. Формат входных данных Первая строка входных данных содержит два целых числа n и m (1 ≤ n, m ≤ 100). Последующие 2∙n строк описывают прохождение трассы каждым из участников. Описание прохождения трассы участником состоит из двух строк. Первая строка содержит имя участника с использованием только латинских букв (строчных и заглавных). Имена всех участников различны, строчные и заглавные буквы в именах различаются. Вторая строка содержит m положительных целых чисел, где каждое число – это время прохождения данным участником каждого из m кругов трассы (каждое из этих чисел не превосходит 1000). Длина каждой строки не превышает 255 символов. Формат выходных данных В выходные данные необходимо вывести имя победителя гонки на картах. Если победителей несколько, требуется вывести имя любого из них. Пример входных и выходных данных Входные данные Выходные данные 5 3 Sumaher 2 1 1 Barikelo 2 1 2 Olonso 1 2 1 Vasya 1 1 1 Fedya 1 1 1 Fedya
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи можно использовать следующий алгоритм:

1. Создать словарь для хранения суммарного времени прохождения каждого участника. 2. Считать первую строку входных данных, содержащую два целых числа n и m. 3. Создать цикл для считывания данных каждого участника (2∙n строк). 3.1. Считать имя участника. 3.2. Считать строку времени прохождения m кругов трассы. 3.3. Посчитать суммарное время прохождения участника и добавить его в словарь. 4. Найти минимальное значение в словаре и вывести соответствующее имя участника.

Пример на Python:

```python def find_winner(data): total_times = {}

# Считываем данные n, m = map(int, data[0].split())

# Заполняем словарь суммарным временем для каждого участника for i in range(1, 2 * n + 1, 2): participant_name = data[i].strip() lap_times = list(map(int, data[i + 1].split())) total_time = sum(lap_times) total_times[participant_name] = total_time

# Находим победителя winner = min(total_times, key=total_times.get)

return winner

# Пример использования input_data = [ "5 3", "Sumaher", "2 1 1", "Barikelo", "2 1 2", "Olonso", "1 2 1", "Vasya", "1 1 1", "Fedya", "1 1 1", ]

output = find_winner(input_data) print(output) ```

В данном примере программа выведет "Fedya" как победителя гонки на картах.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос