|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||||||
Как ускорить код? Оптимизировать?27.08.2023, 15:16. Показов 4118. Ответов 36
Метки нет (Все метки)
0
|
||||||
| 27.08.2023, 15:16 | |
|
Ответы с готовыми решениями:
36
Как ускорить код? Как ускорить код? Вывести все правильные скобочные выражения (оптимизировать алгоритм, ускорить работу кода) |
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
|
| 28.08.2023, 23:14 | |
|
SmallEvil, я так понимаю тут какой-то обмен блоками длиной 2^k между массивами perm и new_perm, причем k вводится из клавиатуры.
0
|
|
|
625 / 383 / 67
Регистрация: 09.03.2016
Сообщений: 4,276
|
|||
| 28.08.2023, 23:25 | |||
|
Ну его на хрен. Сам ускоряй свою байду...
0
|
|||
| 28.08.2023, 23:37 | |||||||
|
Не по теме:
А вот реальные листинги : Найти max количество подряд идущих элементов последовательности, которые делятся на одно и то же натуральное число Старый недобрый time limit exceeded ... их можно бесконечно искать на форуме ...
0
|
|||||||
|
5251 / 1557 / 121
Регистрация: 21.04.2013
Сообщений: 9,113
|
||
| 29.08.2023, 03:54 | ||
|
0
|
||
|
Just Do It!
|
||
| 29.08.2023, 04:21 | ||
|
что намекает на дубовый брутфорс, а это уже подразумевает оптимизацию алгоритма, точнее, его смену. но так как сама задача не озвучена, то и взятки гладки...
0
|
||
|
5251 / 1557 / 121
Регистрация: 21.04.2013
Сообщений: 9,113
|
|
| 29.08.2023, 04:36 | |
|
0
|
|
|
Just Do It!
|
|||
| 29.08.2023, 04:47 | |||
|
за 2 сек не уложился - иди гуляй дальше... а много потоков на одном ядре будет ещё больше тормозить.
0
|
|||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||
| 29.08.2023, 09:59 [ТС] | ||
![]() SmallEvil, написал, извинияюсь, что принес тебе так много сложностей, да и всем Вам Добавлено через 2 минуты Ладно, легче уж сюда выложить ".. распарсенную задачу"
0
|
||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||
| 29.08.2023, 10:02 | ||
|
Никто вам ничего не подскажет без ТЗ.
0
|
||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|
| 29.08.2023, 10:21 [ТС] | |
|
Добавлено через 11 минут
Эм, получилось не очень, вот адекватный вариант: У вас есть перестановка из элементов, с общим числом 2 в степени i. По заданному числу h, 0<=h<=i, нужно разложить перестановку на блоки длиной 2^i, которые обязательно не пересекаются. Т.е. 1-й блок - (1 ... 2^h), 2 - (2^h+1, ..., 2*2^h), 3 - (2^h*2+1, ..., 3*2^h), и т.д. Далее соседние блоки свайпнуть. Т.е. 1-й со 2-м, 3-й с 4-м и т.д. Дан набор позиций, нужно определить, какие элементы будут находиться на этих позициях после выполнения всех операций. Вводятся A = 2^i, B>=1, C<=100000, --- кол-во элементов в перестановке, кол-во операций и кол-во интересующих позиций, соответсвенно Далее следуют B строк, в каждой из которых содержится одно число hj (0 ≤ hj < i), означающие, что нужно менять соседние блоки по 2^hj элементов Затем следуют C строк, в каждой из которых содержится одно число cj (1 ≤ cj ≤ A), представляющее интересующую позицию. Формат вывода: Вывести C строк, в j-й строке указать номер элемента перестановки на позиции cj. Пример: Входные данные 9 3 3 1 2 5 4 2 5 Результат работы 6 8 3
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
||||||||||||||||
| 29.08.2023, 12:20 | ||||||||||||||||
|
Код еще нужно дотестировать...
Добавлено через 12 минут Может у вас неверные входные данные ? Или где то неточность в диапазоне вводимых данных. Например экспонента или еще какой.
0
|
||||||||||||||||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|
| 29.08.2023, 12:44 [ТС] | |
|
SmallEvil,
Да, вот верные данные: Входные данные 8 3 3 0 1 2 1 3 7 Результат работы 8 6 2
0
|
|
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||||||||
| 29.08.2023, 13:00 | |||||||||||
|
DOPIXKMNLD, ну тогда всё ОК.
Комментарии к коду нужны (желательно конкретные места) ? Добавлено через 6 минут DOPIXKMNLD, А вот теперь можно будет подумать на другим алгоритмом, если нужно. Добавлено через 4 минуты DOPIXKMNLD, а теперь смотрим на ваш "рабочий код" на приведенных мной данных. А именно :
![]() Добавлено через 1 минуту То есть там у вас UB. Как я и говорил.
0
|
|||||||||||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||||
| 29.08.2023, 13:08 [ТС] | ||||
|
Добавлено через 1 минуту И, в ваш код выдает ошибку выполнения на 3м тесте(посмотреть его не могу)
0
|
||||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||||||||||
| 29.08.2023, 15:43 | |||||||||||
|
1u - литерал типа unsigned int со значением 1. << - битовый сдвиг влево. То есть, свдигаем 1-у на i_exp битов влево. Что эквивалентно степени двойки : 2i_exp Добавлено через 59 секунд Добавлено через 4 минуты DOPIXKMNLD, нужно смотреть на диапазон вводимых данных. Возможно легче работать с самими позициями. И не создавать всю последовательность. Добавлено через 2 часа 24 минуты Берем все С позиций. Их начальные значения мы имеем. И крутим их B раз, симулируя перестановки. Эмпиричски :
![]() Input по условию.
Добавлено через 2 минуты Сложность получится O(B * C) ? Это всё мысли вслух.
1
|
|||||||||||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
||||||
| 30.08.2023, 10:06 [ТС] | ||||||
|
Вот верный ответ:
Кликните здесь для просмотра всего текста
1
|
||||||
|
Йуный плагиат-падаван)
176 / 119 / 45
Регистрация: 17.10.2022
Сообщений: 566
|
|
| 30.08.2023, 22:44 [ТС] | |
|
Или можно сетать
0
|
|
| 30.08.2023, 22:44 | |
|
Как оптимизировать код? Как оптимизировать код Как оптимизировать код? Как оптимизировать код? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|