|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||||||
Нужно ускорить/опитимизировать код30.04.2023, 08:37. Показов 4013. Ответов 55
Метки нет (Все метки)
Задача:
La Cucaracha Каждую полночь в квартире ученого Васи начинается ужас. Сотни ..., о нет! ТЫСЯ- ЧИ тараканов вылазят из каждой дырки к его обеденному столу, уничтожая все крошки и объедки! Вася ненавидит тараканов. Он очень долго думал и сделал Супер-ловушку, которая привлекает всех тараканов в большой зоне после активации. Он планирует ак- тивировать ловушку сегодня ночью. Но есть проблема. Эта очень эффективная ловушка с её очень большой зоной работы поглощает огромное количество энергии. Так что, Вася планирует минимизировать время работы этой ловушки. Он собрал информацию о всех местах, в которых живут тараканы. Также он заметил, что все тараканы двигаются толь- ко по линиям его скатерти с постоянной скоростью (мы можем предположить, что эта скорость равна 1, так что таракан расположенный в одной из секций, может за 1 едини- цу времени переместится на любую соседнюю секцию (по вертикали или горизонтали)). Вася решил активировать его ловушку в одной из секций. Когда ловушка активирована, все тараканы будут двигаться к секции, содержащей ловушку, так быстро, как только смогут. Поэтому в любой момент времени после активации тараканы двигаются к сек- ции, в которой находится ловушка, максимально уменьшая расстояние до неё. Если есть два пути с одинаковым расстоянием, то таракан выберет любой. Напишите программу для Васи, которая выбирает секцию, минимизирующую время, необходимое для уни- чтожения всех тараканов. Конечно, ваша программа будет считать, что скатерть будет плоскостью с декартовой системой координат и секции — точки с целыми координатами. Формат входного файла В первой строке входного файла содержится число мест, в которых живут тараканы М (1< М < 10000). Следующие М строк содержат 1 и у — координаты мест, в которых живут тараканы (целые числа не больше 10° по абсолютному значению). Формат выходного файла Вам необходимо вывести только два целых числа х и у, не превосходящие по модулю 10°, — координаты секции, которая минимизирует время работы. Если есть более одное решение — выведите любое из них. Вот мой код:
Но он не проходит огроменный тест(( Кликните здесь для просмотра всего текста
239
-254 -670 -596 714 608 -680 -96 479 -1 -97 620 440 -112 339 514 -265 65 -386 119 -13 223 -386 -254 -158 159 271 589 -341 560 553 620 295 62 -546 516 352 396 88 -685 -521 217 294 52 -86 205 -608 58 225 -673 -532 -195 -14 -204 -5 -41 11 -65 -689 -289 385 350 -386 -226 284 465 -425 -561 -326 90 644 403 430 -459 399 313 483 -630 -286 -519 -623 -314 698 155 -506 -609 -65 -466 517 347 600 -308 -599 295 -71 443 -153 337 -706 449 -205 62 -203 609 400 -354 -201 -145 -28 -44 -355 -360 -150 625 538 -642 -677 -700 -716 -309 100 -59 -439 -286 -391 -339 525 -273 85 -21 -63 671 506 -193 589 -93 519 -463 524 -694 -96 76 -388 334 470 -322 -616 -69 398 376 694 -121 124 336 -197 -302 437 427 -360 -590 -302 611 252 122 276 -616 258 -629 234 -141 -132 33 -237 556 692 311 530 -401 -642 108 -550 -272 -426 642 271 481 202 306 706 113 471 225 -705 67 712 276 555 -591 279 -263 180 20 441 -160 -138 627 307 133 -202 -241 3 -420 496 -669 -123 -679 -22 -470 643 69 69 385 -311 412 -46 -28 649 -242 38 -373 624 -29 -689 -368 122 138 -91 -633 -600 -689 -53 449 -280 -502 493 285 -253 95 -131 -295 586 -308 441 -120 354 32 353 0 -315 89 399 341 -237 138 638 -55 669 211 441 1 -438 604 249 7 71 -404 -622 -56 133 -369 321 562 500 622 263 -48 439 -476 -358 -693 603 -61 555 -454 405 -35 -246 -463 544 79 -46 -145 166 -20 449 562 38 -367 70 531 480 0 29 424 428 -695 241 360 0 -291 312 -594 -696 -563 -463 102 -550 279 610 61 652 505 646 404 -199 -475 -674 -577 332 -608 -139 521 167 67 314 684 -15 101 474 708 -257 354 -414 -142 588 169 -646 -311 -528 135 -261 502 39 122 -199 99 575 275 436 555 517 110 460 386 -60 -204 -623 69 -203 -498 458 442 -409 173 -541 -292 -495 -561 696 -581 106 -313 602 44 192 -264 -158 99 -495 -660 632 235 453 178 -618 -275 476 247 -520 377 65 478 516 287 115 -305 -469 356 3 313 59 -473 -513 189 673 -490 -694 -541 -287 -25 2 -50 105 -35 287 -554 -4 130 -481 713 -233 -698 561 -435 367 -625 -331 -170 -129 -183 584 139 -210 -623 -13 -315 48 -76 -548 143 624 574 382 -21 -482 -707 461 653 43 -550 482 148 571 481 633 -222 561 -450 126 Что делать? Как быть?
0
|
||||||
| 30.04.2023, 08:37 | |
|
Ответы с готовыми решениями:
55
Задача: даны НОК и НОД. Нужно найти все пары чисел, для которых они верны. Нужно ускорить код Ускорить код:
|
|
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,320
|
|
| 30.04.2023, 17:49 | |
|
DOPIXKMNLD, почему (1,6) правильный???
Дает общее расстояние == 0+2 + 0+3 + 0+1 = 6 (1,5) == 0+1 + 0+4 + 0+0 = 5, что меньше 6
0
|
|
|
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
|
|
| 30.04.2023, 17:59 | |
|
eaa, я слаб в геометрии, а уж вслепую на телефоне мне тут вообще без шансов.
Но если так, то красиво) Добавлено через 1 минуту Gdez, надо максимум минимизировать. (1, 6) дает 3, а (1, 5) - 4.
0
|
|
|
Status 418
|
|
| 30.04.2023, 18:00 | |
|
Red white socks, ну нам же описанный ромб нужно найти. а если перевернуть, то нужно будет найти квадрат.
Добавлено через 1 минуту это будет за O(n). можно бинпоиском найти. но бинпоиском по ответу, а не просто бинпоиск.
1
|
|
|
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
|
||
| 30.04.2023, 18:06 | ||
|
eaa, И почему после поворота ромб в квадрат превратится
![]() Но идею понял, непонятно, как это работает. правда, на задворках где-то понимаю, что это развитие идеи с диаметральными точками Добавлено через 1 минуту
0
|
||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|
| 30.04.2023, 20:07 [ТС] | |
|
eaa, Red white socks, Gdez,
Ну так что товарисчи, как это можно сделать?(( Я предлагал алгроитм с поворотом фигуры
0
|
|
|
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
|
|
| 30.04.2023, 20:21 | |
|
DOPIXKMNLD, если я правильно понял, то вам нужно найти наименьший квадрат с диагоналями по сетке, в котором содержатся все точки.
Половина его диагонали будет решением. Сам квадрат ищется тем самым поворотом. Тогда его сторона - разность между максимумом и минимумом по координате после поворота(из двух выбираем максимальное). Навскидку нужно подумать, что делать с иррациональными числами, стоит ли работать в арифметике с sqrt(2), но может эта проблема надуманная
1
|
|
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||||||
| 01.05.2023, 08:31 [ТС] | ||||||
0
|
||||||
|
Status 418
|
||||||
| 01.05.2023, 09:14 | ||||||
округляем вверх
1
|
||||||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|
| 01.05.2023, 09:46 [ТС] | |
|
eaa, к сожалению не во всех случаях работает
====== Тест #3 ======= --- Входные данные: размер 15 --- 3 0 0 4 4 -1 5 --- Результат работы: размер 4 --- 0 3 --- Правильный ответ: размер 4 --- 0 4
0
|
|
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|||
| 01.05.2023, 10:39 [ТС] | |||
|
Или вот:
1 239 17 239 17.000000000000014 Добавлено через 13 секунд eaa, хорошо, буду стараться! Добавлено через 45 минут ====== Тест #22 ======= --- Входные данные: файл слишком велик, размер 205030 --- --- Результат работы: размер 15 --- 12724 43825571 --- Правильный ответ: размер 15 --- 12724 43825572 --- Поток ошибок: размер 0 --- --- Вывод проверяющей программы: размер 59 --- wrong answer Contestant says 999960730, jury say 999960729 Добавлено через 32 секунды В смысле, как это в код запихнуть?
0
|
|||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||||||
| 01.05.2023, 11:35 [ТС] | ||||||
|
eaa,
eaa, 22 тест уже прошел, теперь вот это Не по теме: **** ====== Тест #49 ======= --- Входные данные: файл слишком велик, размер 207813 --- --- Результат работы: размер 17 --- -1445565 5154739 --- Правильный ответ: размер 17 --- -1445566 5154739 Добавлено через 3 минуты Проблема в том, похоже, что в 49 тесте ans_y = -1445565,5 Значит, по моему коду(доделанному из вашего) прога его округляет вниз, а надо вверх
0
|
||||||
|
Status 418
|
|
| 01.05.2023, 11:37 | |
|
DOPIXKMNLD, я "сто" лет назад решал эту задачу. правда не на питоне. проблем вроде не было.
Добавлено через 1 минуту DOPIXKMNLD, все правильно округляет. когда отрицательные тебе eps нужно прибавлять, а не вычитать.
1
|
|
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|
| 01.05.2023, 11:42 [ТС] | |
|
eaa, пробую!
0
|
|
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|||||||
| 01.05.2023, 11:47 [ТС] | |||||||
|
eaa, неа, не получилось
Ошибка на этом же тесте
0
|
|||||||
| 01.05.2023, 11:47 | |
|
Как ускорить код?
Как ускорить код? Оптимизировать?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|