Aragaer
взятие минимума это верхний элемент в этом списке
Aragaer
а вот вставка соответственно смешнее. Очевидно, что выбрасывание старого это просто уменьшить "время жизни" у верхнего, если стало 0, то его выбросить и у нас новый верхний
Aragaer
а собственно вставка - и тут хитрость - если просто вставлять, идя сверху, то O(k)
Anonymous
Потому что хз что туда писать =)
блин, интересно. чутка позже гляну) сохранил себе сообщение. если чтото рожу дам знать
Aragaer
а вот если идти с хвоста и сразу выбрасывать все, что больше (потому что все равно не доживет), то тут и есть "амортизированная константа"
Anonymous
а последний будет “6”:“hello”
Aragaer
ну я б сделал функцию вида "create path", которая берет "элемент" и дает следующий
Tishka17
в твоем случае будет { "yyy": [ None, None, { "a": {"ttt": [None, None, None, None, None, None, "hello"]} } ] "xxx": world, }
Aragaer
но вот вопрос
Aragaer
[ ("a", (1,)) ("b", ("test",) ]
Aragaer
что получится?
Aragaer
или ты превратишь список в словарь для этого дела?
Tishka17
входной список может быть такой: [ ("a", (1, "x"), ("b", (1, "y") ]
Aragaer
не знаю про красиво, надо писать много кода 8)
Tishka17
вот да
Tishka17
и у меня не выходит красиво
Tishka17
хотя можно через defaultdict первым проходом, а потом сконвертить словари в списки
Tishka17
но чет медленно будет, чувсвую
Aragaer
придумал такое
Aragaer
сначала идем вперед, ищем сколько найдется
Aragaer
потом идем с конца до этого места, создаем структуры
Aragaer
потом вставляем результат
Aragaer
короче работающий код вроде сделал
Aragaer
https://gist.github.com/aragaer/3e6c015cc702cf7198bed4f1e54e462a
Aragaer
надо отрефакторить
Как использовать макросы типо этого "{Привет|Здарова} Как {ты|сам} ?"
Aragaer
макросы?
макросы?
Ну как их называют ?
Как использовать макросы типо этого "{Привет|Здарова} Как {ты|сам} ?"
Например Привет как ты ? Здарова как сам ? Привет как сам ? И т.д.
Aragaer
выглядит как rivescript
Система?
Ну блин софт.
Daniil
так кто выбор делает что подставлять?
Daniil
рандомно?
Выбирает каждый раз
Kop
с чего ты взял?
Иде подсвечивала его
Tishka17
ну ты импортируй
Kop
Может что не так делал
Misha
Может что не так делал
In [4]: from collections import defaultdict In [5]: defaultdict Out[5]: collections.defaultdict
Kop
In [4]: from collections import defaultdict In [5]: defaultdict Out[5]: collections.defaultdict
Определенно пропустил это момент )))
Дмитрий
Ну ребята ?
Погугли python random choice
Погугли python random choice
Ну это не рандом чоисе
Там каждый раз разный текст
Ща покажу пример как это работает
Дмитрий
Ну это не рандом чоисе
то что ты описал - это именно он. опиши подробнее тогда
Aragaer
регекспом выдрать блоки, для каждого блока сделать random.choice
Aragaer
или же переписать для rivescript и заюзать его
Kop
Ну это не рандом чоисе
Рандом чоис из листа. Плюс формат к тексту
freezlite
У меня словарь из 100 элементов например, нужно пройтись циклом по 10, порядок не имеет значения
freezlite
как это сделать ?
Aragaer
сделать сначала список, а потом погуглить про "разбить лист на чанки"
Aragaer
есть готовые решения
Kop
сделать сначала список, а потом погуглить про "разбить лист на чанки"
Можно ведь ещё взять список ключей и из этого списка выбрать 10 или count подрубить
то что ты описал - это именно он. опиши подробнее тогда
https://youtu.be/rBvlJwkZY2c Вот на этом видео использует макросы
freezlite
.items()[:10] не работает
koder
for idx, key in enumerate(x): If idx == 10: break
freezlite
items() возвращает dict_items
Дмитрий
https://youtu.be/rBvlJwkZY2c Вот на этом видео использует макросы
мне предлагается смотреть видео про спамеров?)
Больше не нашел видео
🤷‍♂ где макросы
Anonymous
https://youtu.be/rBvlJwkZY2c Вот на этом видео использует макросы
Так создай массив через сплит и выдавай рандомное значение.