Viktor
У меня есть товарищ, который устроился в Гугл в Варшаву, прорешав 500+ задач. Ему потом чуваки сказали, мол, с ума сошёл, зачем столько, 100-200 люди решают, не больше.
Viktor
Правда потом выясняется, что некоторые из них в университетские годы бывшие ай-си-эмщики 😄
Viktor
но не все
Viktor
ну и всякие KMP, Карасик, и тому подобные алгоритмы стараются больше не спрашивать.
Viktor
По крайней мере, это не стандарт.
Viktor
Дейкстра стандарт, а всякие хитрые штуки — ну увольте, все-таки это собеседования, а не олимпиадный кружок.
Viktor
Это хороший тренд 🙂
Viktor
Зацените контору — https://near.org/team/
Viktor
Вот кто олимпиадников нанимает только 😂
Evgeniy
Те, кто пониже, уже не олимпиадники, попроще 🙂
Viktor
аха, именно. болтаются внизу страницы где-то.
Порридж В Ко-ливинге
Странно, что те, у кого нет олимпиады не написано: "они у нас временно, такиз лохов мы обычно не держим"
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Литкод что-то намутил, и теперь у меня пол челенджа пишет не засчитаным
Evgeniy
Апрельского
А было полностью прорешано?
Порридж В Ко-ливинге
Evgeniy
У меня нормально все
Порридж В Ко-ливинге
Наверное потому что я его не сразу решил
Порридж В Ко-ливинге
Был день когда я опоздал
Порридж В Ко-ливинге
Когда все увидили dp, а я — комбинаторику
Viktor
@borisov_evgeniy добро пожаловать 🙂
Null
Happy Monday! 👋 Продолжаем говорить про основы распределённых систем. На этой неделе коротко обсудим шардирование. https://vitkarpov.me/posts/database-partitioning/
Evgeniy
Сегодняшнюю задачу из челленжа в лоб никто не решал? По времени проходит?
Evgeniy
без сортировки имею в виду
Evgeniy
https://leetcode.com/explore/challenge/card/september-leetcoding-challenge/556/week-3-september-15th-september-21st/3467/
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Один раз прошелся, через bucket и все
Порридж В Ко-ливинге
А потом по bucketу
Evgeniy
С массивом
Порридж В Ко-ливинге
Ну вот, это первое что мне в голову пришло
Порридж В Ко-ливинге
Там и ограничение всего 1000
Evgeniy
Да
Порридж В Ко-ливинге
Да
А ты/вы на каком ЯП решаете?
Evgeniy
А с сортировкой я не додумал как
Порридж В Ко-ливинге
Оу, бэкэндером где-то работаете?
Evgeniy
https://leetcode.com/problems/car-pooling/discuss/858048/C-simple-O(n)-solution-no-sorting
Порридж В Ко-ливинге
Evgeniy
Не, я щас сам на питончике
Я писал на нем, но он мне не так нравится
Порридж В Ко-ливинге
А по моему вообще балдежно
Порридж В Ко-ливинге
Еще : убрать, и как просто английский текст
Порридж В Ко-ливинге
А то постоянно забываю
Evgeniy
Динамическая типизация
Evgeniy
Быстро что-то написать, да, удобно
Порридж В Ко-ливинге
Динамическая типизация
Ой, ну я на JS пишу, и ничего
Порридж В Ко-ливинге
ВСего то на 30% больше багов 🤣🤣🤣
Порридж В Ко-ливинге
А вообзе у питона строгая типизация
Порридж В Ко-ливинге
Вообще мне не привычно
Порридж В Ко-ливинге
Ни в плюсах, ни в JS такого нет
Порридж В Ко-ливинге
https://leetcode.com/problems/car-pooling/discuss/858048/C-simple-O(n)-solution-no-sorting
class Solution: def carPooling(self, trips: List[List[int]], capacity: int) -> bool: bucket = [0]*1000 inside = 0 for t in trips: [n, s, e] = t bucket[s] += n bucket[e] -= n for n in bucket: inside += n if inside > capacity: return False return True
Порридж В Ко-ливинге
Даже удивительно, нигде не крашнулась
Порридж В Ко-ливинге
С первой попытки… У меня такое редко бывает
Evgeniy
Простое решение
Порридж В Ко-ливинге
А есть круче?
Порридж В Ко-ливинге
Я не думаю что можно эфективнее
Evgeniy
Можно еще проверки добавить
Порридж В Ко-ливинге
https://leetcode.com/problems/car-pooling/discuss/858048/C-simple-O(n)-solution-no-sorting
Так вроде индентичное твоему даже
Evgeniy
Да
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Да
Я не смотрел если что
Порридж В Ко-ливинге
А вот так, как будто списал
Порридж В Ко-ливинге
В школе бы не поверили, по двойке нам влепили бы 🤣🤣🤣
Evgeniy
Что за проверки
В первом цикле можно брать модуль у только что вычисленных bucket[s] и bucket[e] и проверять, не больше ли он capacity
Evgeniy
Как во втором цикле проверяется
Evgeniy
Не сильно вероятный случай, но он возможен
Порридж В Ко-ливинге
Сложность не уменьшает, а кода добавляет
Evgeniy
При малом количестве поездок не играет роли, да
Порридж В Ко-ливинге
Ну это уже на уровне оптимизации что-то
Порридж В Ко-ливинге
Такое надо на проектах думать
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Питон пора запретить на литкоде
Yuri
Питон пора запретить на литкоде
кажется, можно еще короче, через accumulate
Yuri
но я не знаю как)