Холиварофорум

Не все, что говорят на Холиварке — правда!

Вы не вошли.

Объявление

Холиварка празднует День Чтеца!
Ознакомиться с праздничными чтениями можно в соответствующем разделе

#1 2021-06-15 09:54:19

Анон

Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Здесь я буду ныть писать о том, как отращиваю лапищи, чтобы найти работу лучше и интереснее нынешней.
Когда-то (года три назад) я и мечтать не смел о той работе, которая у меня есть сейчас, и тогда я тоже отращивал лапищи, что придаёт мне мотивацию и некоторую уверенность в себе. Но расти порой больно и сложно, особенно когда в сутках так мало времени. 
Думаю, что этот безбложик мне хоть немного, но поможет.
Лапищи я буду отращивать путём решения задач на алгоритмы и структуры данных (всяческие операции с бинарными деревьями например тащемта), а также запиливания небольших проектов (всё на питоне). В идеале (программа максимум) хочу перекатиться из автоматизитора в бэкенд-инженеры. Программа минимум - научиться за полчаса решать задачки hard уровня (положим, с LeetCode) оптимальным способом (с линейной или логарифмической производительностью).

Буду называться анон-левел-апер

Отредактировано (2021-06-16 07:55:45)

#2 2021-06-15 18:38:22

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Анонче, благодатной почвы твоим деревьям!

#3 2021-06-16 07:56:49

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Анон пишет:

Анонче, благодатной почвы твоим деревьям!

Спасибо, анончик!

анон-левел-апер

#4 2021-06-16 08:26:06

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Итак, я начал с понедельника.

Выбрал задачку среднего уровня, на динамическое программирование.
Long story short: дана матрица с целыми числами, надо было вернуть матрицу-ответ, каждый элемент которой - сумма элементов блока  (подматрицы) в исходной матрице,  блок рассчитывается как квадрат со сторонам определённой длины, центр - координаты элемента в матрице-ответе. Причём границы блока могут выходить за границы исходной матрицы, тогда считать только сумму тех элементов, которые  попадают в границы исходной матрицы.

Полтора часа после работы я сидел и пытался понять задание, что же мне надо сделать. Не выдержал под конец, полез в обсуждение - там обсудили и разобрали задание и пришли к мнению, что сформулирована задача не очень понятно (ну да, лепи отговорки).  Жутко расстроился вчера, думал о том, что потерял время. И что время вообще - драгоценная вещь. Было очень плохо думать о том, сколько я уже потерял. Начал казнить себя, что начал решать задачи так поздно. В идеале надо бы всегда держать мозги в тонусе.

Сегодня почитал пару статей, где люди описывали свой опыт подготовки, в обеих статьях у авторов было по 4 недели, чтобы подготовиться к собеседованию в Гугл (и они прошли). Я поставил себе срок где-то 6 месяцев (куда собеседоваться - пока не знаю, буду пробовать разные компании, но до уровня собеседования в Гугл мне очень далеко пока). Оба автора работали полный день, и занимались до или после работы, как и я собираюсь. Рекомендовали: 2-3 часа кодинга - отдых - 2-3 часа дизайн. Ну и плюс держать режим, высыпаться, делать упражнения, правильно есть (есть я люблю!). Я пока занимаюсь только кодингом. За два часа (45 минут работать, 15 отдыхать) чувак в среднем решал одну лёгкую задачу, одну среднюю.

Я решил среднюю сегодня (после того, как впал в отчаяние и сокрушался, почему я такой тупой) за 3 часа, ну не считая вчерешних попыток разобраться, хех. Есть куда стремиться.

Вообще я даже не ожидал, что мой алгоритм с первого раза пройдёт все тесты, и это было приятно: я не безнадёжен. Код, конечно, мог быть проще и красивей (синонимы в контексте кода), но производительность ок (иначе некоторые тесты свалились бы), и главное - работает. Улучшать имплементацию буду позже.

А ещё я понял, что в моей голове есть иногда препятствия. Какой-то голос убеждает меня, что я тупой, это вот сыновья маминых подруг другие решают за полчаса, но это какой-то особый тип людей. Другой голос говорит, что не верит, будтоо у меня что-то получится, и потому стараться бесполезно, это другие какие-то люди могут хорошо пройти собеседование, ну вы поняли. Хочу выброситб эти дурацкие мысли.

Тем временем написало несколько рекрутёров, и я им ответил - в любом случае, полезно получить побольше опыта реальных собеседований (я же всё равно не верю пока, что пройду лол, так что почему бы и не попробовать, не тратя силы на волнение об уже заранее известном результате).

анон-левел-апер

Отредактировано (2021-06-16 08:31:33)

#5 2021-06-17 07:11:20

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Сегодня решил задачку среднего уровня на динамическое программирование за 33 минуты, но там было и задание сформулировано понятнее, и вместо матрицы был одномерный массив. Но всё равно доволен!
После этого понял, что устал (уже 9 вечера) и отправился спать пораньше: отдых тоже очень важен.

P.S. А перед сном даже смог написать несколько строчек в свой оридж-долгострой, до которого не доходили руки неделю!

анон-левел-апер

Отредактировано (2021-06-17 10:29:05)

#6 2021-06-18 08:04:40

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Решил ещё одну среднюю задачку, снова на динамическое программирование, это была модификация вчерашней, с дополнительным условием. Потратил 49 минут.
Так-то неплохо, чувствую, как мозги начинают разминаться)) Следующая задачка - та же с очередной модификацией, и вот там надо использовать деревья и поиск в глубину. Освежу-ка в памяти это и завтра приступлю.
Задумался о том, как мозг учится, сколько раз надо повторить новый приём/навык, чтобы потом видеть, где надо его применить и таки применить, и чтобы не было такого, что ты вроде бы и освоил, а потом забыл.

Из дыбра: вчера думал, что устроил себе незапланированный чит-день в плане еды (не смог сопротивляться неплохому поке), а сегодня посчитал по калориям - нет, уложился в коридор, и даже остался лёгкий дефицит. Ещё и весы порадовали утром надо это отметить праздничным ужином
А ещё сегодня хотел посмотреть в окно, что это там народ по дороге толпой на великах едет, и ударился лбом о стекло внезапно, как-то его и не заметил

анон-левел-апер

Отредактировано (2021-06-18 08:06:25)

#7 2021-06-19 09:30:18

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Сегодня разбирал задачу, на которую нацелился вчера. Понял, что сейчас сразу я её не решу, поэтому прочитал объяснение к ней, разобрал разные подходы (рекурсия, рекурсия с мемоизацией, динамическое программирование). Думаю задачу пока отложить, а через некоторое время вернуться и решить по следам того, как я понял объяснения подходов к решению. Потратил где-то 90 минут.

Один из перерывов оказался долгим: съездили за боба-чаем, у меня был матча(надеюсь, я правильно это пишу) с сырной пенкой и мармеладом из личи - весьма недурно (хоть и вышел за пределы сегодняшних калорий, но весы с утра снова порадовали, лучше, чем вчера даже)! Придало мне новых сил после рабочего дня) На работе кстати пробовал новый (ну как новый, немного знаком) для себя язык, джава скрипт - ну ок вроде.

анон-левел-апер

#8 2021-06-20 01:26:22

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Сегодня решил 2 средних задачки, на динамическое программирование и массивы, потратил где-то часа 3. Тупил что-то: то ли задачки посложнее, то ли устал за неделю.

анон-левел-апер

#9 2021-06-20 02:56:57

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Подпишусь. Заглавный пост как про меня: что три года назад и мечтать нельзя было о нынешней работе. Только я ничего не решаю (а зря), в тематических чатах тусю только ( в рид-онли, канешн).
Есть мнение, что если вкурить раздел Learn, оно еще бойчее пойдет.
Удачи и дисциплины тебе, анон! И больших лапищ.

#10 2021-06-21 09:23:59

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Анон пишет:

Подпишусь. Заглавный пост как про меня: что три года назад и мечтать нельзя было о нынешней работе. Только я ничего не решаю (а зря), в тематических чатах тусю только ( в рид-онли, канешн).
Есть мнение, что если вкурить раздел Learn, оно еще бойчее пойдет.
Удачи и дисциплины тебе, анон! И больших лапищ.

Спасибо, анон!
Главное - что прогресс таки есть, и получается находить работу лучше! Да и освоить что-то новое никогда не будет лишним - даже если не пригодится напрямую, то потренируешь мозг.
В тематических чатах я тоже тусую, там предлагают мок-собеседования, вот думаю набраться уверенности и попробовать)

анон-левел-апер

#11 2021-06-21 09:40:53

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

В субботу было думал после задачек с утра заняться своими хобби, но как закончил заниматься, то понял, что навалилась жуткая усталость. В итоге до одного хобби руки дошли только к вечеру, сделал немного и неправильно, придётся начинать заново. До второго руки так и не дошли.

В воскресенье решил вообще не напрягаться и только отдыхать (иначе я знаю, что быстро сломаюсь и буду не в силах продуктивно работать и готовиться к собеседованиям). На завтрак поехали в кафешку (прошлый раз были там больше года назад), и что-то это доставило мне такую радость - соскучилась по кафешке, место выпало у окошка, еда понравилась, да и просто настроение было хорошим. А потом как-то приуныл дома, что половина воскресенья уже прошла, а я что-то так и не отдохнул толком, и хобби не позанимался, и на работу немного влом завтра  :sadcat:
Но вкусные роллы немного поправили настроение, а потом прокатились за боба-чаем, и я устроил себе чит-день (а весы утром порадовали снова, ещё на немного). Хех, почти в каждом посте упоминаю еду)

P.S. Начал ещё смотреть ужастик (Ужас Амитивилля, 2005), но он настолько меня разочаровал унылыми и тупыми (надо ли упоминать, что совсем не страшными) крипи-штампами, что фейспалмнул и выключил, начал смотреть другой, из 70-х, но потом уехали за чаем, не досмотрел. Выглядит вроде поприличнее.

анон-левел-апер

Отредактировано (2021-06-21 09:46:43)

#12 2021-06-22 08:17:44

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Вторая неделя пошла.
Захотел немного сменить тему и решил среднюю задачку на хэш-таблицы. Потратил около часа. Не очень рад этому, буду улучшать время.

Есть хорошая мысль, которой я следую: "Перед тем, как думать, как, понять, зачем". Мой алгоритм мог быть проще и короче (как и мои посты лол), если бы я сразу за деревьями разглядел лес, то вместо углубления в имплементацию я бы подумал, а для чего я сейчас заполняю словарь вот этими значениями? Что я хочу получить? И это помогло бы заимплментировать алгоритм проще. Буду думать, что это произошло оттого, что я давно не практиковался (ну да, продолжай оправдываться). Ладно, ещё одно оправдание - пробковой доски с этой прикрепленной цитатой у меня не было перед глазами в этот раз (хорошая попытка).

Пожалуй, надо составить более структурированный план подготовки, нежели просто выбирать рандомные задачи определённого уровня на определённые темы. Сейчас в среднем я могу продуктивно заниматься задачками два часа после работы. Надо попробовать вставать пораньше и заканчивать работу пораньше. Этим утром был разбитый, грешу на то, что поздно лёг спать. Почти сразу, как залогинился на рабочий ноутбук, взял отпуск на пятницу  :chearleader:

Говорил сегодня с рекрутёром, обещает раунд более технического разговора с тим-лидом(?) на тему того, что я делал и какие инструменты использовал в работе, если я понравлюсь - то потом уже интервью на кодинг, если пройду его - виртуальный онсайт. Сказал, что хотел бы иметь время для подготовки, рекрутёр ответил, что неделю могут дать.

Хотел написать о чём-то помимо подготовки, но забыл :(

анон-левел-апер

#13 2021-06-22 09:02:57

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Ещё понял внезапно: исчезло то щемящее чувство, когда думаешь о том, что ты зря потратил время, и оно уже никогда не вернётся. А ещё ушла тревожность по сравнению с прошлой неделей, когда я места себе не находил. Не уверен, насколько повлияли мои занятия, но очень рад))

анон-левел-апер

Отредактировано (2021-06-22 09:03:15)

#14 2021-06-24 08:08:03

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Вчера почти не было времени заниматься, потратил 35 минут на понимание задания (среднее, массивы и жадные алгоритмы) + наброски идей как решать. Шло туго.
Задача: дана строка из 0 и 1, каждый элемент - это ящик, в котором лежит шар (1) или не лежит шар(0). Надо вывести массив, в котором каждый элемент с индексом i представляет собой число шагов, которые нужны для того, чтобы перенести все шары в ящик i. За один раз можно перенести только один шар и в одном ящике может быть больше одного шара за раз.

Бывают задачи, на которые смотришь и у тебя нет идей как решать. Совсем нет. Ты понимаешь, что надо сделать, но от тебя ускользает основная идея, ты видишь лишь её части, но не хватает будто бы связующего звена.

Решение

Излагаю решение своими словами, надеюсь, что мозгу это поможет закрепить концепцию, хех.

Зато вторую задачу, тоже среднюю, на массив и хэш-таблицы, с ходу решил минут за 15  :dontknow: 

В итоге сегодня потратил 1 час 45 минут.

Сегодня говорили с другим рекрутёром: набирается новая команда, нужен специфический опыт, которого у меня пока нет, но есть похожий. Вот как найдут этого командообразующего человека с опытом, вот тогда мне позвонят снова.

анон-левел-апер

Отредактировано (2021-06-25 08:25:16)

#15 2021-06-25 08:19:14

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Средняя задача на жадные алгоритмы, массивы и матрицы за 50 минут. До решения додумался с первого раза, без открывания подсказок, это радует.

Написал рекрутёр из другой компании, с которым уже говорили и который передал моё резюме команде и тим лиду - меня не выбрали в этот раз для дальнейшего собеседования, ок.

Не знаю, стоит ли упрощать себе жизнь используя вместо куска собственноручно написанного кода всяческие функции типа zip(*array) и разные структуры данных из коллекций типа defaultdict, на всякий случай не использую - не на всех собеседованиях это одобряют, так что не буду лениться и терять сноровку, хех.

Вечер перед тремя выходными. Хорошо! Вообще почти весь день отличное настроение сегодня, жизнь как будто снова обрела краски и исчезла тревожность.

Ещё сегодня немного расхламлялись.

анон-левел-апер

Отредактировано (2021-06-25 08:26:10)

#16 2021-06-26 23:39:04

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Вчера
Был день отпуска, с утра решал

1. Сколько в массиве есть непрерывных подмассивов, чья сумма равно заданному числу

Решение

2. Вернуть индексы двух чисел из массива, чья сумма равно заданному числу - лёгкая. Известно, что в массиве только два таких числа. Повторения одного числа не допускаются.

Решение

На первую потратил 2 с половиной часа  :smoke: В оправдание скажу, что первые несколько решений не прошли из-за лимита времени. Жутко разболелась голова, две таблетки не помогли. Когда всё-таки решил, то понял, что теперь мне очень больно и медленно думать. Но чувство вины, что столько провозился и столько потратил времени на одну задачу, грызли. Тогда пошёл на компромисс - я решаю лёгкую задачу и отдыхаю. Решил вторую задачу за 4 минуты.
Отсюда выводы: 1) если совсем устал и плохо - отдохни и не мучайся чувством вины 2)на лёгкие задачи можно не смотреть вообще (как я и подозревал, хех), ничего полезного для себя не почерпну.
Зато радует, что так быстро смог решить лёгкую, потому что год - полтора назад я мог потратить минут 15-30 на такого уровня задачу. Прогресс!

После решения задач пошёл гулять на кладбище - оно довольно старое (конечно, не настолько старое, как я люблю, но уютное и попадаются интересные и красивые надгробия).
Потом вечером пошёл гулять с фотоаппаратом (пытаюсь вернуться к одному из хобби  :chearleader: ), пропустил почти весь свет, понял, что устал, натёр ноги, но фоточки вроде ничего.

Ел черешню, гамал в качестве отдыха.


Сегодня
С утра решил одну среднюю задачу, 1 час 27 семь минут. Оправдашка: самое очевидное, brute force решение не прошло по времени.
Дан массив чисел, индекс элемента - координата по оси x на двумерной шкале, значение элемента - координата на оси y. Надо представить, что эти координаты формируют собой контейнер, который можно заполнить водой. Надо найти максимальную площадь, которую можно заполнить водой (наклонять контейнер, если одна стенка выше другой, нельзя, т.е. заполняем водой до нижней границы). Массивы, два указателя, жадные алгоритмы.

Решение

Сегодня, скорее всего, поедем к друзьям в гости.

анон-левел-апер

#17 2021-07-02 09:25:28

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Итак, средняя задача на массивы, хэш-таблицы, кумулятивную сумму и математику - 1 час 30 минут

Дан массив и число, вернуть True, если подмассив длиной как минимум в 2 элемента, чья сумма - множитель заданного числа, иначе False

Средняя задача на массивы, матрицы, сортировку - 1 час 30 минут

Дана матрица, отсортировать все её диагонали и вернуть отсортированную матрицу

Почти всю эту неделю болела голова, иногда так, что не помогали таблетки(( Чувствую усталость, понял, что триггерит от любых вопросов коллег в чате. Ещё и подготовка к релизу начинается - это значит, что будет несколько вех, над каждой из вех надо работать, и в конце недели вечером (лучше времени для такого и не найти!) выяснилось, что кое-что не работает  :sadcat:

Я недоволен тем, сколько времени уходит на решение задачи средней сложности и что далеко не сразу могу прийти к оптимальному решению - некоторые приёмы для меня новые, надеюсь, что со временем и опытом будет легче. А ещё я косноязычен

Меня расстраивает, что пока часто бывает так, что я смотрю на задачу и кроме самого элементарного brute force решения  мне в голову ничего не приходит (как с получением диагоналей матрицы) без нескольких подсказок или вообще полного разбора задачи в обсуждениях.

Но я каждый раз узнаю что-то новое, и надеюсь, что количество перейдёт в качество. И что меня радует, решать эти задачи уже становится привычкой. 

Вчера я понял, что на работе мне уже стало просто скучно. Я освоил и разобрал всё, что там было, новых челленджей и интересных задач пока нет и неизвестно, когда появятся. Дополнительная положительная мотивация поискать более интересную работу или сменить команду и специализацию.

анон-левел-апер

Отредактировано (2021-07-02 09:27:45)

#18 2021-07-02 23:57:36

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Матрицы, массивы, динамическое программирование, средний уровень: 1 час 37 минут  -_-

Матрица m на n, состоящая из 0 и 1, посчитать, сколько в ней квадратных подматриц, содержащих только единицы

Вспомнил, как в питоне правильно создавать вложенные списки (список, чьи элементы - тоже списки), чтобы они не были одним и тем же списком в памяти (когда изменяешь в цикле первый или n-ный из таких списков, то при этом изменяются все списки): надо [[] for i in range(n)] вместо [[]] * n  :facepalm:

Мне надо подтянуть матрицы: отсутствие практики сказывается плохо.

анон-левел-апер

Отредактировано (2021-07-02 23:59:11)

#19 2021-07-03 23:28:00

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Матрицы, массивы, динамическое программирование, средний уровень: 1 час 12 минут в общем. Где-то минут 15 ушло на решение, не учитывающее граничные кейсы (потому что вчера решал такую же задачку, сегодня решил закрепить понимание принципа),  потом добавил минут за 15-30 проверки для граничных кейсов (вырожденные матрицы, матрица из одного элемента), потом оптимизировал имплементацию.

Дана матрица, заполненная нулями и единицами. Найти площадь самого большого квадрата в матрице, заполненного только единицами

Ещё разбирал задачу на бинарные деревья и динамическое программирование, чтобы она какое-то время поварилась в голове, а я бы решил её попозже, заняло 11 минут 30 секунд.

Вчера позанимался немного хобби, сделал прогресс, правда, не без фейла: две маленькие детали соединил не так, пришлось разъединять обратно. Хорошо, что вовремя заметил и не соединил более крепким способом. Вывод: не надо заниматься хобби поздним вечером, когда уже устал.

Купил карандаш для глаз, накрасился и рад.

анон-левел-апер

Отредактировано (2021-07-04 00:09:48)

#20 2021-07-04 00:02:46

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Итак,
Первая неделя: 10 ч, 22 минуты - 5 задач решено, 1 разобрал на будущее. Среднее время решения где-то 1 час 42 минуты. Средний уровень
Вторая неделя: 8 ч, 12 минут - 7 задач решено, средний уровень, кроме одной лёгкой. Среднее время 1 час 21 минута (не учитывая лёгкую за 5 минут)
Третья неделя:  5 ч, 49 минут - 4 задачи, средний уровень. Среднее время 1 час 27 минут

анон-левел-апер

#21 2021-07-07 08:29:17

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Сегодня первый рабочий день после длинных выходных, утром ещё даже не начал работать, но уже сразу понял - мне смертельно скучно на этой работе. Дополнительная мотивация.

После работы пошёл бегать, побегал минут 20 где-то, всё было нормально, как вдруг ощутил, что у меня словно закончилась энергия, и ноги трясутся и подгибаются, и я вот-вот упаду. До этого я бегал с января по май, потом был перерыв два месяца, теперь я возобновляю бег, и вот в первый же день - пожалуйста, хоть вроде и не особо напрягался, и не голодал. Затёк домой, плюхнулся на диван, оклемался, пошёл решать задачки.

Массивы, хэш-таблицы, средний уровень: 12 минут (вообще 9, но я решал в редакторе, а потом переписывал в редактор литкода).

Дан массив размера n, заполненный положительными целыми числами в диапазоне от 1 до n, каждое число встречается 1 или два раза, вывести массив, состоящий из чисел, встречающихся два раза

Строки, хэш-таблицы, два указателя, жадные алгоритмы, средний уровень - 1 час и 4 минуты.

Дана строка, разбить её таким образом, чтобы каждый символ встречался не более чем в одной подстроке и вернуть массив с размерами подстрок

И время для хобби нашлось - половина текущего проекта готова, причём даже большая половина, думаю. Главное - не забывать просто жить и отдыхать, позволяя себе ничего не делать и просто смотреть на облака.

анон-левел-апер

#22 2021-07-08 08:49:23

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Проснулся разбитым, оттягивал начало рабочего дня, попивая утром кофе и смотря в окно. Когда начал работать, бесило каждое дёрганье от коллег в слаке. Ну что ещё им от меня надо  :smoke: А они на мою тарелочку подкладывают и подкладывают задач и вопросов  :panic: 

Утром говорили с другим рекрутёром из той же компании, которой не понравилось моё резюме, в этот раз была другая команда. Сошлись на том, что я напишу рекрутёру, как буду готов решить кодовую задачку (как я понял, на строки), которую они дадут. Я сказал, что мне надо бы пока время подготовиться, неделя-другая. Так что уделю внимание строкам.

Сначала болела голова, потом просто был разбитым и практически ни на что не пригодным. Запустил несколько джоб в Дженкинсе, помог коллеге-разработчику подебажить (аааа, как меня бесят разработчики, которые копипастят код, не разбираясь, как он работает, а потом у них закономерно не работает, тесты падают, они идут ко мне, и я им объясняю, почему, и помогаю пофиксить). Потом с другим разработчиком разбирались, почему не работает мой код - я не добавил нужный декоратор.

Лежал на диване на грани сна и яви.

Если было бы можно взять и отключить себя на сегодня, чтобы проснуться завтра утром, скипнуть этот день, я бы так сделал. Дурацкое состояние, когда ничего не хочется и ничего не интересно, и сам себе поднадоел, прокручиваешь в голове свои фейлы и не можешь остановиться. Чтобы отвлечься, сел решать задачки, а ведь ранее думал было пропустить сегодня.

Строки, стек, средний уровень - 5 минут

Дана строка, состоящая из круглых скобок, вернуть количество скобок, которое нужно, чтобы сделать строку сбалансированной, то есть каждой открывающей скобке соответствует закрывающая

Строки, 33 минуты ушло на то, чтобы понять, что мне надо разобрать определённый алгоритм.

Дана строка, дан паттерн. Удалить из строки все вхождения паттерна и вернуть результат. После удаления паттерна в строке может появится ещё паттерн из оставшихся символов

Ради интереса ввязался в июльский челлендж: каждый день решать по одной задаче, которые появляются в 12 ночи и которые надо решить в эти сутки
Массивы, уровень не указан, 5 минут

Дана матрица n на n, строки и столбцы отсортированы по возрастанию (в неубывающем порядке, уточнено там). Вернуть k-й самый маленький элемент в матрице

Вот теперь повеселел, и настроение стало лучше.  :rainbow:

Быть может, перед сном напишу ещё пару строчек своего ориджа.

анон-левел-апер

Отредактировано (2021-07-08 08:54:01)

#23 2021-07-09 07:50:39

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Сегодня был почти таким же бесполезным на работе, хотя несколько тикетов можно будет закрыть по итогам сегодняшних обсуждений. Было много митингов (ненавижу митинги).
Один из коллег уходит работать в другое место, и была виртуальная прощальная вечеринка: менеджер заказала нам коктейли с доставкой каждому (ингридиенты и инструкции). Я выбрал безалкогольную версию, будучи уверен, что алкоголь (основной компонент, который ещё и создаёт объём, собственно) просто заменят чем-то другим, типа газировки. И что же? Оказалось, что безалкогольный по мнению той фирмы, что этим занимается, - это без алкоголя, а не с чем-то другим вместо него.
В итоге я заменил виски колой и было ничего так.

Выпнул себя побегать, решил в это раз не слишком напрягаться и больше слушать свой организм, побегал неплохо так, потом ещё погулял.

Сел решать задачи.
Динамическое программирование, бинарные деревья, поиск в глубину, средний уровень - 21 минута

Дано бинарное дерево, представляющее собой дома с количеством наживы в них, нельзя грабить два соседних дома (в данном случае родителя и детей одновременно). Вернуть максимальную сумму наживы после ограбления всех домов

Строки, хэш-таблицы, сортировка, средний уровень - 19 минут

Дана строка из букв и цифр, вывести эту строку, отсортированную по частоте символов в ней

Динамическое программирование, массивы, попытка решить - 34 минуты

Дано два массива, вернуть длину самого большого общего подмассива

Почувствовал сегодня землетрясение, где-то полминуты слегка пошатывало, сначала думал, что голова внезапно закружилась.

анон-левел-апер

Отредактировано (2021-07-09 07:52:49)

#24 2021-07-10 09:48:15

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

На работе шуршал бодрее нимношк.

Хотел пойти погулять после, но потом решил, что влом и гамал час. Потом сел решать задачи.

Строки, жадные алгоритмы, средний уровень - 1 час 12 минут

Дана строка, прсдатвляющая собой целое число. Найти минимальное количество deci-binary чисел, которые бы суммировались до этого числа. deci-binary числа - десятичные числа, состоящие из нулей и единиц, при этом первая цифра числа только 1. Для n = "32" ответ будет 3 (10 + 11 + 11 = 32), для n = "82734" ответ будет 8

Массивы, динамическое программирование (ежедневный челлендж) - 55 минут

Найти длину самой длинной возрастающей подпоследовательности в массиве целых чисел

анон-левел-апер

Отредактировано (2021-07-10 09:49:08)

#25 2021-07-10 14:59:30

Анон

Re: Вращаем бинарные деревья[айти][левел-ап][фехтование][дыбр][yes com]

Подпишусь, мой лвл недотягивает (в какой-то момент не вдупляю ни задачи, ни решения)), но интересно и мотивирующе. Когда анон растет над собой - :heart2: Терпения и настойчивости тебе))
(желающий в лвл-ап анон, который не может осознать режим в работа +2(3/4) часа учебы после)

Подвал форума

Основано на FluxBB, с модификациями Visman
Доработано специально для Холиварофорума