|
Модератор
3142 / 2290 / 469
Регистрация: 26.03.2015
Сообщений: 8,920
|
||||||
Подпоследовательности с одинаковыми суммами31.05.2015, 02:40. Показов 2603. Ответов 26
Метки нет (Все метки)
Условие задачи:
Есть N разных положительных целых чисел. Требуется найти все пары последовательностей из этих чисел длинной не более M, такие что они будут иметь одинаковую сумму. Решение:
1. Какие есть способы избежать конфликта имён в строках 2-4 с именами функций из текущего контекста? 2. Как лучше всего "упаковать" makeSums и makePairs во внутрь функции solve? 3. Как можно упростить и/или ускорить этот код (кроме использования хэш-таблицы в makePairs)? Добавлено через 26 минут 4. Какой есть хороший способ засекать время выполнения функции? Добавлено через 32 минуты Haskell: Успешно time: 3.77 memory: 7624 signal:0 C#: Успешно time: 0.13 memory: 24264 signal:0
0
|
||||||
| 31.05.2015, 02:40 | |
|
Ответы с готовыми решениями:
26
Вывести массив с одинаковыми суммами столбцов |
|
Модератор
|
||
| 01.06.2015, 09:17 | ||
|
Среди http://hackage.haskell.org/packages/ неверное, что то есть.
0
|
||
|
Модератор
3142 / 2290 / 469
Регистрация: 26.03.2015
Сообщений: 8,920
|
|||
| 01.06.2015, 10:51 [ТС] | |||
|
Добавлено через 55 минут Во-первых, groupBy в F# реализовано через hash. То есть, Во-вторых, у меня есть большие подозрения, что за счёт использования last вместо reverse Вам удаётся избежать существенной части вычислений. Если я в F# добавляю toList, заставляя считать всё, то время существенно увеличивается. Если я в Haskell вместо reverse использую last, то время существенно сокращается. p.s. Если у Вас в строке 5 добавить пару квадратных скобок, то в строке 14 можно будет написать просто combinations n lst
0
|
|||
|
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
|
||||
| 01.06.2015, 11:21 | ||||
Добавлено через 2 минуты
0
|
||||
|
Модератор
3142 / 2290 / 469
Регистрация: 26.03.2015
Сообщений: 8,920
|
|||
| 01.06.2015, 11:30 [ТС] | |||
|
а
0
|
|||
|
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
|
|||
| 01.06.2015, 12:39 | |||
0
|
|||
|
Супер-модератор
|
||||||
| 01.06.2015, 19:15 | ||||||
|
Набросок. Как известно, каждый элемент множества всех подмножеств множества мощности N однозначно соответствует целому из диапазона [0,..2N-1]. Это позволяет использовать несколько другой подход:
0
|
||||||
|
Модератор
|
|||
| 01.06.2015, 20:28 | |||
![]() Во первых, нужно перебрать подмножества - эту задачу недавно рассматривали. Разве что сразу ограничиваться длиной подпоследовательностей не более заданной, в процессе формирования подпоследовательностей. Это может дать выигрыш. Потом для каждого непустого подмножества длины не более заданной вычисляется сумма. Тут, лучше всего их сразу в контейнер типа словаря класть (Data.Map) где ключ - сумма, а значение - список подмножеств с такой суммой. Формирование такого словаря происходит быстро, за счёт быстрого поиска в нём при вставке/замене. Дальше, думаю, понятно.
0
|
|||
| 01.06.2015, 20:28 | |
|
Выражение с суммами Подсчет подпоследовательности последовательность и ее подпоследовательности Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . .
Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
|
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг.
Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует.
В процессе разработки. . .
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|