|
1 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 53
|
||||||
Оптимизировать код23.09.2014, 18:34. Показов 1116. Ответов 11
Метки нет (Все метки)
Доброго времени суток, как можно оптимизировать код что бы он быстрее работал ?
Дана последовательность из n чисел a1, a2,..., an. C ней последовательно производят k операций: на i-ом шаге из этой последовательности одновременно вычеркивают все числа, стоящие на позициях с номерами, кратными bi (позиции нумеруются с 1). Ваша задача — промоделировать это процесс и вывести массив после выполнения всех операций.
Код работает правильно, но нужно что бы работал быстрее
0
|
||||||
| 23.09.2014, 18:34 | |
|
Ответы с готовыми решениями:
11
Оптимизировать код
|
|
И целого heap'а мало
96 / 57 / 17
Регистрация: 31.07.2014
Сообщений: 291
|
|
| 23.09.2014, 18:38 | |
|
onlwork, вы заполняете вектор, а потом удаляете не нужное. Может, легче сразу заполнять вектор нужным? Если правильно понял.
0
|
|
|
|
|
| 23.09.2014, 18:39 | |
|
Смысл того, что делает код был бы очень кстати. Просто мне, например, вдумываться в него лень, даже в такой простой.
Чтобы нам не было лень в него вдумываться, опиши хотя бы задачу. Не поленись, будь так любезен.
0
|
|
|
1 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 53
|
|
| 23.09.2014, 18:42 [ТС] | |
|
входные данные:
2 числа, 1 количество элементов в последовательности, 2 количество операций 2 строка - сама последовательность 3 строка - числа операции выходные данные последовательно из которой будут удалены все элементы, чья позиция кратна 2 последовательности Добавлено через 1 минуту Точная формулировка задачи Дана последовательность из n чисел a1, a2,..., an. C ней последовательно производят k операций: на i-ом шаге из этой последовательности одновременно вычеркивают все числа, стоящие на позициях с номерами, кратными bi (позиции нумеруются с 1). Ваша задача — промоделировать это процесс и вывести массив после выполения всех операций.
0
|
|
|
И целого heap'а мало
96 / 57 / 17
Регистрация: 31.07.2014
Сообщений: 291
|
||
| 23.09.2014, 18:53 | ||
|
Бенчмарки. Кстати, onlwork, вы как замеряете скорость выполнения? Может вы чего-нибудь сейчас наделаете, а как узнаете что это ускорило выполнение?
1
|
||
|
Форумчанин
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||
| 23.09.2014, 18:53 | ||
|
Избавиться от поточного ввода/вывода и использовать printf + scanf
Добавлено через 24 секунды
2
|
||
|
1 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 53
|
|
| 23.09.2014, 19:08 [ТС] | |
|
Andrej, на контесте проверяю и на одном из тесте выдает ошибку, так как программа не укладывается в отведенное ей время для выполнения
Добавлено через 4 минуты MrGluck, заменил на scanf и printf - не помогло
0
|
|
|
И целого heap'а мало
96 / 57 / 17
Регистрация: 31.07.2014
Сообщений: 291
|
|
| 23.09.2014, 19:10 | |
|
onlwork, ок.
1. Ты удаляешь из вектора, а это времязатратная операция. Можно не удалять из вектора, а отмечать где-нибудь, что элемент не нужен. vector<bool> какой-нить. По типу решета Эрастофена. 2. Вряд ли поможет с временем, но можно сначала узнать длину файла и уже потом захватывать под него память. Т. к. если даже запасённого места в векторе не хватит, он может переаллоцироваться. Или сразу выставить размер вектора.
0
|
|
|
1 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 53
|
|
| 23.09.2014, 19:12 [ТС] | |
|
Заменил vector на list , теперь все нормально, и все хорошо
0
|
|
|
221 / 166 / 47
Регистрация: 17.07.2012
Сообщений: 587
|
|
| 23.09.2014, 19:12 | |
|
onlwork, n и m до 10^5?
0
|
|
|
1 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 53
|
|
| 23.09.2014, 19:13 [ТС] | |
|
неSlavaSSU, не знаю, мне друг задачу дал
0
|
|
| 23.09.2014, 19:13 | |
|
Как оптимизировать код Как оптимизировать код?
Помогите оптимизировать код Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|