|
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
|
||||||
Комбинации с возрастающим индексом29.03.2020, 05:11. Показов 1055. Ответов 13
Есть задачка с codewars, про комбинации.
Суть в том, чтобы цифры числа разбить на 1..n-1 количество типов комбинаций, при этом порядок индексов должен быть сохранен, например число 9457: [['9'], ['4','5','7']] --> ['9','457'] --> 9 + 457 = 466 [['9','5','7'], ['4']] --> ['957','4'] --> 957 + 4 = 961 [['9','4','7'], ['5']] --> ['947','5'] --> 947 + 5 = 952 [['9','4','5'], ['7']] --> ['945','7'] --> 945 + 7 = 952 [['9','4'], ['5','7']] --> ['94','57'] --> 94 + 57 = 151 [['9','5'], ['4','7']] --> ['95','47'] --> 95 + 47 = 142 [['9','7'], ['4','5']] --> ['97','45'] --> 97 + 45 = 142 [['9'], ['4'], ['5','7']] --> ['9','4','57'] --> 9 + 4 + 57 = 70 [['9','4'], ['5'], ['7']] --> ['94','5','7'] --> 94 + 5 + 7 = 106 [['9'], ['4', '5'], ['7']] --> ['9','45','7'] --> 9 + 45 + 7 = 61 [['9'], ['5'], ['4','7']] --> ['9','5','47'] --> 9 + 5 + 47 = 61 [['9','5'], ['4'], ['7']] --> ['95','4','7'] --> 95 + 4 + 7 = 106 [['9','7'], ['4'], ['5']] --> ['97','4','5'] --> 97 + 4 + 5 = 106 [['9'], ['4'], ['5'], ['7']] --> ['9','4','5','7'] --> 9 + 4 + 5 + 7 = 25 Я понимаю, что для решения нужно использовать рекурсию, и мне удалось написать функцию для разбиения на 2:
0
|
||||||
| 29.03.2020, 05:11 | |
|
Ответы с готовыми решениями:
13
DataGrid: удалить строку с индексом 1, если строка с индексом 2 получает фокус |
|
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
|
|
| 29.03.2020, 20:17 [ТС] | |
|
eaa, нет, даже не пробовал
![]() просто в поиске эта первой выскочила, ее и решил делать
0
|
|
|
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
|
||||||
| 30.03.2020, 02:28 [ТС] | ||||||
|
eaa, начал с первой, понял что рекурсия тут ни при чём, вроде решение правильное, но по времени никак не проходит
![]()
0
|
||||||
|
Status 418
|
|||||||||||
| 30.03.2020, 21:55 | |||||||||||
|
всю задачу не решал, перебор для числа через рекурсию:
Кликните здесь для просмотра всего текста
52139
2
|
|||||||||||
|
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
|
|
| 30.03.2020, 23:51 [ТС] | |
|
eaa, спасибо, но выглядит очень сложно, понимаю что многого прошу, но можно без рекурсии и чтоб код был более наглядным?
0
|
|
|
5514 / 2867 / 571
Регистрация: 07.11.2019
Сообщений: 4,752
|
||||||
| 31.03.2020, 08:39 | ||||||
codcw, что значит порядок индексов должен быть сохранен? Вот тут разве он сохраняется? [['9','5'], ['4','7']] --> ['95','47'] --> 95 + 47 = 142 Добавлено через 11 минут Хм... что-то это на комбинаторные решетки похоже по числу слагаемых: 1111, 112, 13, 22, 4
1
|
||||||
|
5514 / 2867 / 571
Регистрация: 07.11.2019
Сообщений: 4,752
|
|
| 31.03.2020, 10:22 | |
|
1
|
|
|
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
|
|
| 31.03.2020, 18:15 [ТС] | |
|
u235, порядок индексов должен быть сохранен, значит что в элементах которые содержат более одной цифры, порядок индексов должен быть возрастающим
[1,2,3] -> [12,3] -> можно [1,2,3] -> [21,3] -> нельзя Добавлено через 14 минут кстати, ваше решение не работает если в числе есть 0 на позиции отличной от последней
0
|
|
|
5514 / 2867 / 571
Регистрация: 07.11.2019
Сообщений: 4,752
|
||||||
| 31.03.2020, 19:08 | ||||||
|
codcw, понятно.
С нулями поправил:
Да, это точно решетка, там тоже рассматриваются частично-упорядоченные множества (возрастающие индексы). Я в этом не сильно разбираюсь, так, интересуюсь на досуге.
1
|
||||||
|
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
|
||||||
| 31.03.2020, 19:45 [ТС] | ||||||
|
u235, можно вкратце как ваш вариант работает?
0
|
||||||
|
5514 / 2867 / 571
Регистрация: 07.11.2019
Сообщений: 4,752
|
|
| 31.03.2020, 20:05 | |
|
Собственно это аналогично функции bin(). Сдвинули число num на i бит и наложили маску 1. В результате получили список нулей и единиц, соответствующие числу num.
Кстати, напоминаю, у меня не полное решение задачи. У меня аналог кода eaa, только без рекурсии.
1
|
|
|
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
|
|||
| 31.03.2020, 20:12 [ТС] | |||
|
u235,
0
|
|||
| 31.03.2020, 20:12 | |
|
Помогаю со студенческими работами здесь
14
Как присвоить значению X:= F с верхним индексом n и нижним индексом 2 (см. вложение) Подсчитать количество отрицательных элементов с четным индексом и сумму положительных с нечетным индексом Определить средние арифметические элементы с чётным индексом и среднее арифметическое с нечётным индексом элементы массива с нечетным индексом удвоить, с четным индексом заменить на число, вводимое с клавиатуры
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|