|
8 / 1 / 0
Регистрация: 20.02.2019
Сообщений: 35
|
|
Определить победителя соревнования используя записи с системы фиксации23.03.2019, 12:49. Показов 5187. Ответов 4
Метки нет (Все метки)
Ребят, помогите, пожалуйста, решить задачу... Идей пока вообще нет, даже не знаю как подступиться...
Буду очень благодарен за любую помощь! Кольцевые гонки Участники кольцевых гонок на одноколесных велосипедах нумеруются числами от 1 до N. Им предстоит проехать K кругов и победителем является тот, кто проехал их раньше всех. Участники стартуют одновременно с некоторой линии, которая называется конец круга. Каждый раз, когда участник пересекает эту линию, его номер фиксируется автоматической системой с высокой точностью (то есть два участника не могут пересечь эту линию одновременно). После прохождения K кругов эта же линия является финишной прямой. К сожалению, некоторые участники сходят с дистанции и проезжают меньшее количество кругов. Организаторы соревнования забыли число K и стесняются спросить его у участников. Помогите организаторам определить победителя соревнования, используя только записи с системы фиксации. Гарантируется, что хотя бы один из участников преодолел необходимые K кругов и никто из участников не проехал более K кругов. Первая фиксация номера участника происходит после прохождения первого круга. Формат входных данных В первой строке задаются целые числа N и M (1 ≤ N ≤ 100, 1 ≤ M ≤ 10000) — количество участников соревнования и записей с системы фиксации соответственно. Во второй строке задается M целых чисел от 1 до N – номера участников в том порядке, как они фиксировались системой. Формат результата Выведите одно число — номер победителя. Примеры Входные данные 3 4 1 3 3 1 Результат работы 3 Входные данные 3 5 1 1 2 3 1 Результат работы 1 Примечания В первом примере участники 1 и 3 проехали 2 круга, но после последнего круга впереди был участник номер 3, поэтому он и является победителем. Участник номер 2 сошёл с дистанции на первом круге. Во втором примере участник 1 единственный проехал 3 круга и является победителем. Участники 2 и 3 сошли на втором круге.
0
|
|
| 23.03.2019, 12:49 | |
|
Ответы с готовыми решениями:
4
Определить фамилию победителя соревнования и разницу между лучшим и худшим результатом Используя функцию GetVersionEx определить тип операционной системы Определить место самого юного участника соревнования |
|
6 / 4 / 2
Регистрация: 22.11.2018
Сообщений: 83
|
|
| 23.03.2019, 20:45 | |
|
vakru, Дико извиняюсь я в школе не учился объясните русским языком сколько велосипедистов и куда они едут ???
С кокой скоростью какое сопротивления воздуха есть ли зрители которые кидают им палки в колёса ?
0
|
|
|
Мозгоправ
|
||||||
| 23.03.2019, 21:36 | ||||||
1
|
||||||
|
8 / 1 / 0
Регистрация: 20.02.2019
Сообщений: 35
|
|
| 23.03.2019, 22:18 [ТС] | |
|
Кстати, я придумал решение чуть более сложное:
#include <iostream> using namespace std; int main() { // info[0 to M] - информация о проходах кругов участниками // data[0][0 to N] - номера участников // data[1][0 to N] - информация о количестве кругов, пройденных участниками // data[2][0 to N] - номера последних проходов через черту // data[3][0 to N] - значение 1, если количество кругов, пройдённых // участником максимально; значение 0, если нет // Объявление переменных и массивов int n, m, max, min = 10000, count = 0, winner, data[4][100] = {}, info[10000] = {}; // Ввод количества участников (N) и пройденных кругов (M) cin » n » m; // Ввод информации о проходах кругов участниками for (int i = 0; i < m; ++i) cin » info[i]; // Заполнение массива номерами участников for (int i = 1; i <= n; ++i) data[0][i-1] = i; // Поиск номеров последних прохождений через черту конкретных участников for (int i = 1; i <= n; ++i) for (int j = 0; j < m; ++j) if (info[j] == i) data[2][i-1] = j+1; // Поиск количества пройденных участником кругов for (int j = 1; j <= n; ++j) for (int i = 0; i < m; ++i) if (info[i] == j) ++data[1][j-1]; // Поиск максимального количества кругов max = data[1][0]; for (int i = 1; i < n; ++i) if (data[1][i] > max) max = data[1][i]; // Проверка: кто из участников проехал max кругов for (int i = 0; i < n; ++i) if (data[1][i] == max) { data[3][i] = 1; ++count; } // Если max кругов проехал единственный участник, он - победитель if (count == 1) for (int i = 0; i < n; ++i) if (data[3][i] == 1) winner = data[0][i]; // Если max кругов проехало 2 и более участников, находим // min номер проезда через черту if (count > 1) { for (int i = 0; i < n; ++i) if (data[3][i] == 1) if (data[2][i] < min) min = data[2][i]; for (int i = 0; i < n; ++i) if (data[2][i] == min) winner = data[0][i]; } // Вывод победителя cout « winner; return 0; }
0
|
|
|
6 / 4 / 2
Регистрация: 22.11.2018
Сообщений: 83
|
||||||
| 24.03.2019, 02:09 | ||||||
|
vakru, Ничего се ты наркоман конечно. И это работает ?
Добавлено через 3 часа 20 минут
Под ночь просыпается желание по кодить. (если что то не верно прости я в школе не учился) и скажи я поправлю себя :3
0
|
||||||
| 24.03.2019, 02:09 | |
|
Помогаю со студенческими работами здесь
5
Определить победителя матча Как определить победителя
Определить номер победителя Определить, сколько баллов набрал спортсмен-победитель соревнования Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
в-строка - входное арифметическое выражение в инфиксной(обычной). . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|