Автор | Сообщение |
|
Отправлено: 28.06.22 19:35. Заголовок: Задача №5308 (Л. Шастин)
В условии задачи говорится, что у блюда есть время начала и время окончания его приготовления. При этом анализ файла показал, что коды некоторых блюд встречаются там нечетное количество раз. Например, код 1 встречается 3 раза, код 5 - 1 раз. Значит ли это, что некоторые блюда не были приготовлены? В условии об этом ничего не сказано. Более того, если не учитывать эту "странность" файла, то можно даже попасть во второй ответ, хотя, судя по всему, пару одному блюду будет составлять блюдо с другим кодом. Как это все можно объяснить?
|
|
|
Ответов - 8
[только новые]
|
|
|
| Администратор
|
Сообщение: 3626
|
|
Отправлено: 29.06.22 13:36. Заголовок: Skov пишет: В услови..
Skov пишет: цитата: | В условии об этом ничего не сказано. |
|
Спасибо за замечание, условие дополнено. Да, приготовление некоторых заказов могло по каким-то причинам не завершиться.
|
|
|
|
Отправлено: 29.06.22 15:24. Заголовок: Здесь не достаточно ..
Здесь не достаточно просто дополнить условие задачи. Надо изменить второй ответ, в который мы сейчас попадаем без учета дополненного условия. С учетом дополнения ответ, судя по всему, должен быть 58. И первый ответ, скорее всего, надо также подкорректировать.
|
|
|
|
Отправлено: 23.02.23 09:55. Заголовок: Добрый день. Первый ..
Добрый день. Первый из двух ответов задачи (190 - максимальное количество заказов, приготовление которых закончилось в течение одного часа) вызывает сомнения. Внимательно изучив условие задачи, а том числе пример разбора тестового файла в условии, понимаешь, что необходимо рассмотреть все 60 минутные интервалы из файла с исходными данными. Минимальный временной интервал в исходном файле одна минута, поэтому 60 минутные интервалы будут перебираться в цикле, как 0-60 минута, 1-61.минута, 2-62 минута, и т.д. до 900 минуты (всего файл рассматривает 960 минут с начала работы бургерной. В каждом временном интервале необходимо считать только те заказы которые в нем начались и завершились. ### uses school; var hour:=new List <integer>; var s3:=ReadAllLines('26-86.txt').Select(w->w.Split).OrderBy(w->w[0].ToInteger); for var i:=0 to 900 do begin var count:=0; s3.Where(w->w[0].ToInteger.Between(i,i+60)).GroupBy(w->w[1]).ForEach(w->begin count+=w.Count div 2 end); hour.Add(count); end; hour.Max.Pr; В этом случае получается ответ 62. Возможно я неверно понмиаю условия задачи или задача имеет неверный ответ
|
|
|
|
Отправлено: 04.03.23 21:33. Заголовок: gusev67 пишет: В эт..
gusev67 пишет: цитата: | В этом случае получается ответ 62. Возможно я неверно понмиаю условия задачи или задача имеет неверный ответ |
| Я тоже сначала думала как Вы. Посмотрите в архиве solve решение. Лично я только по нему поняла в чем дело. В один час должны вкладываться завершенные заказы. Не факт, что они начали изготавливаться в этот же час, могли и раньше. Формулировка задачи так себе.
|
|
|
|
Отправлено: 21.03.23 20:23. Заголовок: Извините, а где можн..
Извините, а где можно посмотреть решение в "архиве solve"?
|
|
|
|
Отправлено: 03.05.23 09:43. Заголовок: Винникова пишет: Я ..
Винникова пишет: цитата: | Я тоже сначала думала как Вы. Посмотрите в архиве solve решение. Лично я только по нему поняла в чем дело. |
| Ольга, пожалуйста, киньте ссылку на это решение.
|
|
|
|
Отправлено: 28.03.23 17:09. Заголовок: Ответ 129 получила, 190 -нет
Делаю в Excel Получается 9 заказов. Не 190 Если смотреть как на параллельный процесс, то получается 119. Не 190 Или, если среднее как в их примере не считать, а сортировать столбец В по возрастанию. Затем выделять данные в столбце В и смотреть, чтобы сумма была <60 То 42, Не 190
|
|
|
|
| Администратор
|
Сообщение: 4007
|
|
Отправлено: 04.06.23 12:10. Заголовок: Решение есть на сайт..
|
|
|
|