Igor
спс за задачку благодаря я ей вник в циклический сдвиг
Ну а ты уверен что твоя программа рабочая?
Gravity
Igor
А все я увидел ты сдвигаешь полностью. каждый раз.
Igor
а как еще можно было?
Ну если ты знаешь что такое сложность то у тебя квадратичное решение. Можно за линию.
Gravity
я просто подумал раз уж мы не используем последний элемент то его и удалим
Igor
ну там следующая в списке https://leetcode.com/problems/largest-values-from-labels/description/
налетай торопись покупай живопись! ждем первого человека с решением задачи ;)
Igor
Ну так вот ;) давай дерзай ;)
Igor
Никогда не понимал в чем смысл вот таких задач ;( https://leetcode.com/problems/valid-palindrome/
Igor
Или когда просто нужно знать по типу https://leetcode.com/problems/linked-list-cycle/ Да конечно можно догадаться. Но человек который догадается и который знает потратят не сопоставимо разное время.
Andrii
немного об отвественности
Ну... попытка притянуть за уши... Проблема в коде была, что при приведении double (64-битное число) к int16_t (знаковое целое 16-битное) произошло переполнение. Ну... как современные языки тебя спасают? Ну попросят вставить приведение типов явно, ну получишь что-то например в Java class Conversion { public static void main(String[] args) { double x = (args.length + 1) * 40000; short y = (short)x; System.out.println(x); System.out.println(y); } } будет вывод 40000.0 -25536 чем нам помогли типы? А вот в Python надо будет постараться, там int бесконечный и переполнения не было бы. Нет 16-битного типа, нет проблемы. Опять же, проблема больше с тем, что никто не ожидал там переполнения. А раз так, то для ракеты Asserions Fails думаешь лучше? Или любая Runtime ошибка? Мы не знаем горизонтальную скорость ракеты, как должна отрабатывать логика, которая от неё зависит?
ffffff
эти линкед листы просто самое ужасное что я видел в жизни
ffffff
а потом еще деревья
Igor
эти линкед листы просто самое ужасное что я видел в жизни
Та сами линкед листы норм. Задачи шляпа ;)
Andrii
эти линкед листы просто самое ужасное что я видел в жизни
Двусвязный циклический список самое приятное, что есть в программировании. Для меня 😊
Andrii
Няшка
ffffff
жесть какая то
ffffff
что-то мне это напоминает...
Igor
печеньки галетные
Andrii
жесть какая то
Это ты про алгоритм танцующих связей, которым можно покрыть больше половины задач на бэктрекинг? Он как раз на двусвязных циклических списках.
Igor
Ну давайте что то типа. https://leetcode.com/problems/isomorphic-strings/ остальные еще хуже ;)
ffffff
но щас читаю и понял что реально надристал
Igor
и это заходит?
Andrii
я когда то тут надристал
Агрегация статистики не выглядит достаточно надёжно, это надо строго доказывать и не всегда просто. Лучше просто пройтись по двум строкам до первого противорения
Gravity
я когда то тут надристал
получается данная схема работает только с 0
Gravity
?
ffffff
да у меня везде фолс ретюрнило👍
Andrii
получается данная схема работает только с 0
Нет просто надо учитывать такие неизоморфные варианты как abab и xyyx. Статистика совпадает, но изоморфизма нет.
Gravity
я вот запутался решать данную задачку только для 0 или для всех чисел лучше
Gravity
А причём тут нуль?
ну допустим пришлось бы дублировать 4 или 5
Gravity
и алгоритм должен работать и в этих случаях?
Igor
хз я человек ленивый ;) return len(s) == len(t) and len(set(zip(s, t))) == len(set(s)) == len(set(t)) мне len
Igor
мда ну и задачки https://leetcode.com/problems/contains-duplicate/
Gravity
тоже за o(1) && o(n)?
Igor
да ничего просто соответствующих пар букв столько же сколько различных букв в обоих множествах ... значит одной букве из одного множества соответсвует одна буква из другого. Ну и осталось проверить длинну. Профит
Igor
нету там решения с помощью ксора потому что 2 и более
Igor
Кароче пока задача с нулями была самая вменяемая ;(
Igor
лиит это и есть на логику ;)
Максим
Напиши прогу для управления лифтами. На вход подавай разные комбинации входных данных - количество лифтов, количество этажей, вместимость одного лифта, вызовы с разных этажей и тд. От простого ( "хрущёвка" - 1 лифт, до 4 человек, до 9 этажей) к более сложным. И польза, и практический пример "для чего оно надо" перед глазами. Терпеть не могу абстракции ради абстракций.
m700
налетай торопись покупай живопись! ждем первого человека с решением задачи ;)
почему в это наступать и не хотел, что вот этим все закончится
Igor
ну покаж код
m700
ну покаж код
а ты за свой сон не беспокоишься?)
Igor
мне завтра бухать весь день Народ с другого офиса в гости приезжает ... так что если что я дотерплю и сниму стресс
lvt
просто бывает тесты не очень ... могло и зайти.
какой же кринж сел сейчас со свежей головой, и до меня сразу же дошло, что вообще-то можно записать кортежи в список, вместо использования словаря...
Igor
я бы уже начал снимать ... но дома все вино я вчера выпил.
Артем
Ребят, кто может помочь с Фласком, не могу понять, как реализовать систему проектов внутри одного пользователя. То есть существует юзер, к которому в БД привязаны два проекта. Допустим, на странице профиля я могу настроить отображение одного проекта, а как реализовать возможность переключиться юзеру между проектами?
lvt
ты имеешь ввиду сделать вместо фор рэйнж zip(val, lab)?
Gravity
Gravity
а в чем проблема?
ffffff
питухонерам полегче
m700
а в чем проблема?
посмотри у тя может ситуация быть не везде что будет возврат из функции
lvt
питухонерам полегче
а разве не будет быстрее добавлять все элементы массива в множество пока индекс+1 равен длине множества?
Igor
а разве не будет быстрее добавлять все элементы массива в множество пока индекс+1 равен длине множества?
что в твоем понимании быстрее? если асимптотически то нет. Если просто итерировать в пайтон то тоже скорее всего нет. А ранний выход с точки зрения асимптотики ничего не дает. Кароче я бы не парился. Твой цикл с проверкой на каждом шаге в пайтон будет жутко тормозить.
lvt
а за капотом функция лен разве не пробегается по списку/множеству? дважды пробежаться полностью > один раз в чем я ошибаюсь?
lvt
а, в проверке дело понял, спасибо
Igor
ты имеешь ввиду сделать вместо фор рэйнж zip(val, lab)?
я набросал что то типа from itertools import groupby class Solution: def largestValsFromLabels(self, values: List[int], labels: List[int], numWanted: int, useLimit: int) -> int: s = sorted(zip(labels, values), reverse=True) r = [] for l, g in groupby(s, key=lambda x: x[0]): for g, _ in zip(g, range(useLimit)): r.append(g[1]) return sum(sorted(r)[-numWanted:]) Но опять же вопрос был не в скорости а в минимуме телодвижений ;)
Igor
а, в проверке дело понял, спасибо
ну всегда можно "померять" если есть желание ;) но обычно "ручные" циклы с условием в пайтон очень медленные
lvt
я просто уже много раз видел решения на литкоде, которые я понимал и знал что так можно сделать, но мне казалось, что так будет дольше, а на деле оказывалось наоборот литкод вообще забавный кстати, иногда смотришь - решения абсолютно одинаковые, а различия во времени большие
Артем
Наверное адекватнее будет передавать не название, а id/uuid
ну я так понимаю - на страницу профиля мы юзеру подгружаем список проектов, которые привязаны к нему в БД. Допустим, в виде ссылок. Он кликает на "pornhub", она добавляется в динамический урл, и по названию части урла (username/pornhub) мы подгружаем все, что нашли из БД по порнохаб?
lvt
да время они меряют не очень точно. Я бы скоростью сильно не парился. Ну если только не в разы . ;)
если не секрет, сколько вы уже в проге и чем занимаетесь непосредственно на рабочем месте? и имеет ли смысл решать такие задачи на постоянной основе?
Igor
если не секрет, сколько вы уже в проге и чем занимаетесь непосредственно на рабочем месте? и имеет ли смысл решать такие задачи на постоянной основе?
я сейчас в беке программирую давно и на разных языках. Задачи имхо стоит решать или по фану. Или в самом начале. А так пустая трата времени ;) ну или для подготовки к собесам
lvt
понятно как вообще апнуться хоть до какого-то приемлемого по текущим меркам джуна? (условно делая что-то на python)
lvt
сейчас изучаю sql на степике, и просто сижу на литкоде, попутно узнавая что-то новое на какие-то курсы финансов нет, да и не знаю я что именно мне нужно)
Mikhail
да время они меряют не очень точно. Я бы скоростью сильно не парился. Ну если только не в разы . ;)
Да там и не замерить скорость по нормальному, учитывая их скейлинг и то, что они в АВС запускаются (насколько я помню)
Igor
сейчас изучаю sql на степике, и просто сижу на литкоде, попутно узнавая что-то новое на какие-то курсы финансов нет, да и не знаю я что именно мне нужно)
имхо платные курсы не нужны начинающему. Точнее совсем не обязательны. В открытом доступе инфы полно.
lvt
а как к вам пришло понимание, что вот этим хотите заниматься
lvt
именно направление какое-то определенное
Артем
Именно!
а как мы с урла можем передать инфу в код? Я представляю как это с формы сделать, но чет ступор мозговины ловлю