LeetCode Problems
2.55K subscribers
190 links
You will get one leetcode problem every 2 days. Also you can LeetcodeBot to own telegram group.

По всем вопросам и предложениям обращаться @emil_dev и @FyodorMenshikov
加入频道
Следующая задача: https://leetcode.com/problems/knight-dialer/. Она будет разобрана в 11.02.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,двумерное динамическое программирование,динамическое программирование на двумерной поверхности,O(n^2) по времени,O(n) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=W-4CqpxQLTo
Следующая задача: https://leetcode.com/problems/longest-turbulent-subarray/. Она будет разобрана в 13.02.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,двумерное динамическое программирование,O(n) по времени,O(1) по памяти,acmp 471,матрица,быстрое возведение в степень,O(logn) по времени

Разбор предыдущей задачи: https://www.youtube.com/watch?v=JIzRJnJ3fiY
Следующая задача: https://leetcode.com/problems/minimum-cost-for-tickets/. Она будет разобрана в 15.02.2021 в 21:00 MSK

Теги предыдущей задачи: конструктив,O(|arr|) по времени,O(1) по памяти,динамическое программирование,одномерное динамическое программирование,acmp 20

Разбор предыдущей задачи: https://www.youtube.com/watch?v=77bj8yOqC68
Следующая задача: https://leetcode.com/problems/video-stitching/. Она будет разобрана в 17.02.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,одномерное динамическое программирование,O(max(days)) по времени,O(max(days)) по памяти,два указателя,O(|days|) по времени,O(|days|) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=4yDaiCuAupc
Следующая задача: https://leetcode.com/problems/longest-arithmetic-subsequence/. Она будет разобрана в 19.02.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,одномерное динамическое программирование,сортировка,стек,жадный алгоритм,слабые ограничения,O(n) по времени после сортировки,O(1) по памяти после сортировки

Разбор предыдущей задачи: https://www.youtube.com/watch?v=YCWp9Gju3do
👍1
Следующая задача: https://leetcode.com/problems/minimum-score-triangulation-of-polygon/. Она будет разобрана в 21.02.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,двумерное динамическое программирование,leetcode 873,O(n*(n+range)) по времени,O(n*range) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=u8nwArnla1E
Следующая задача: https://leetcode.com/problems/partition-array-for-maximum-sum/. Она будет разобрана в 23.02.2021 в 21:00 MSK

Теги предыдущей задачи: неполное решение,динамическое программирование сверху вниз,мемоизация,экспоненциальный алгоритм,time limit exceeded

Разбор предыдущей задачи: https://www.youtube.com/watch?v=D3z9gI11QHs
Следующая задача: https://leetcode.com/problems/minimum-score-triangulation-of-polygon/. Она будет разобрана в 25.02.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,одномерное динамическое программирование,O(|arr|*k) по времени,O(|arr|) по памяти,O(k) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=-zOifXLgno8
Следующая задача: https://leetcode.com/problems/longest-string-chain/. Она будет разобрана в 27.02.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,динамическое программирование по подстрокам,O(|arr|^3) по времени,O(|arr|^2) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=Vgv2Tq9qyWk
Следующая задача: https://leetcode.com/problems/filling-bookcase-shelves/. Она будет разобрана в 01.03.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,одномерное динамическое программирование,карманная сортировка,unordered_map,string_view,структурное связывание,O(|words|*max(|words[i]|)^2) по времени,O(|words|^2*max(|words[i]|)) по времени,O(|words|) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=bn6U9Np1bko
👍2
Следующая задача: https://leetcode.com/problems/minimum-cost-tree-from-leaf-values/. Она будет разобрана в 03.03.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,одномерное динамическое программирование,O(|books|^2) по времени,O(|books|) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=dqjuw5s-wxU
Следующая задача: https://leetcode.com/problems/largest-1-bordered-square/. Она будет разобрана в 05.03.2021 в 21:00 MSK

Теги предыдущей задачи: неоптимальное решение,динамическое программирование,динамическое программирование по подстрокам,O(|arr|^3) по времени,O(|arr|^2) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=TQKHfrAmWZU
Следующая задача: https://leetcode.com/problems/stone-game-ii/. Она будет разобрана в 07.03.2021 в 21:00 MSK

Теги предыдущей задачи: перебор с отсечениями,O(sizeI*sizeJ*min(sizeI,sizeJ)^2),двумерные интегральные суммы,O(sizeI*sizeJ*min(sizeI,sizeJ)),структуры данных,дерево отрезков,O(sizeI*sizeJ*log(min(sizeI,sizeJ)))

Разбор предыдущей задачи: https://www.youtube.com/watch?v=4E4SrErtBZ4
Следующая задача: https://leetcode.com/problems/largest-1-bordered-square/. Она будет разобрана в 09.03.2021 в 21:00 MSK

Теги предыдущей задачи: динамическое программирование,двумерное динамическое программирование,нисходящее динамическое программирование,антагонистические игры,O(|piles|^3) по времени,O(|piles|^2) по памяти

Разбор предыдущей задачи: https://www.youtube.com/watch?v=mFuxa_s-OrQ
👏2👍1
Следующая задача: https://leetcode.com/problems/minimum-cost-tree-from-leaf-values/. Она будет разобрана в 13.03.2021 в 21:00 MSK

Теги предыдущей задачи: перебор с отсечением,динамическое программирование,динамическое программирование на двумерной поверхности,O(sizeI*sizeJ*min(sizeI,sizeJ)) по времени,O(sizeI*sizeJ)

Разбор предыдущей задачи: https://www.youtube.com/watch?v=j9VW1E7G_jk
👍2
На связи Фёдор Меньшиков. Поучаствовал в квалификации Google Code Jam. За 3 часа написания предварительно получил максимальный балл 101. Мой ник mfv. Ещё можно написать квалификацию, она продолжается до 22:00 мск субботы 27.03.2021, для прохождения дальше нужно набрать хотя бы 30 баллов.
Добрый день! С вами Фёдор Меньшиков, и я принёс Вам информацию о новом способе попадания в Гуглы-Фейсбуки-Амазоны.

Об этом способе рассказал мой бывший ученик, ныне сотрудник Яндекса. Сейчас он как раз проходит этот курс подготовки.

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

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

Компанию Outtalent создал Тилек Мамутов, работавший 11 лет в Гугле. Менторами компании являются текущие сотрудники IT-гигантов. Выпускники курсов обычно получают несколько хороших оферов (от 2 до 5, в среднем 3) в компании класса Google, Facebook, Amazon.

Ближайший набор на курс завершается в эти дни, последний срок подачи заявки 9 мая. Подробнее на сайте https://outtalent.com/

Для тех, кто не готов прямо сейчас проходить курс, есть возможность оставаться с Outtalent на связи через группу в Телеграм, где можно пообщаться с менторами и выпускниками, работающими в Google, Facebook, Uber, DeepMind и т.п.: @outtalentcafe. Там можно задавать любые вопросы на тему собеседований и о попадании в компании вроде Google.
👍2
Всем привет! С вами Фёдор Меньшиков, и я представляю Вам новый проект. Вы наверно знаете, что решения задач leetcode на моём канале выходили почти исключительно на C++. Меня не раз в комментариях просили разбирать на другом языке. И я решил запустить пилотный проект разборов на разных языках.

За 4 недели с 31 мая по 27 июня я разберу 20 easy задач с сайта leetcode на тему деревья на каждом из 7 языков, на которых у меня пишут ученики: C++, Java, Python 3, Go, Javascript, C#, Swift. Итого будет 20 * 7 = 140 разборов. Одна задача на семи языках каждый рабочий день. Голосом повторять почти одно и то же на семи языках программирования мне не хочется, поэтому разборы будут письменные. Разборы будут включать описание подходов и реализацию с построчным объяснением, а также код решения целиком. Также в разборе будут описаны типичные ошибки/неоптимальности при решении этой задачи. Также я постараюсь задачи на деревья решить разными способами, как минимум рекурсивным и нерекурсивным. Ну и как всегда Вы можете рассчитывать на то, что узнаете от меня оптимальный способ решения задачи.

Я предлагаю Вам поучаствовать в этом проекте. Участие платное, но довольно доступное для работающих программистами. Базовый вариант (2900 рублей, примерно 39 USD) - Вы выбираете один язык программирования, на котором будете решать - и каждый рабочий день с понедельника по пятницу (границы дня по московскому времени) Вы решаете одну задачу согласно расписанию (расписание есть в конце поста), когда решили - загружаете решение в группу Телеграм с коллегами по курсу, решающими на том же языке программирования, можно ссылкой на pastebin или публичный репозиторий. До 9 утра мск следующего дня я в канале Телеграм для Вашего языка программирования публикую разбор, в том числе с учётом Вашего решения. В разборе рекомендуемый код может быть похож на Ваш, а возможно Ваш код (или похожий на него) будет упомянут в разделе "так лучше не делать" с пояснением, что в нём не так. То есть в этом варианте Вы не получаете индивидуальную обратную связь, но понимание оптимальности или неоптимальности Вашего подхода у Вас появится. На всякий случай уточню, что разбор будет в письменном виде и на русском языке.

Если Вы хотите решать задачи на нескольких языках программирования - стоимость участия увеличивается на 1000 рублей (примерно 13 USD) за каждый дополнительный язык. Например, участие на двух языках (например, Java и Python) стоит 3900 рублей (примерно 53 USD).

Если Вы вообще не хотите самостоятельно решать или не хотите, чтобы Ваши решения влияли на разборы, а хотите только получать мои разборы - стоимость такого варианта 1900 рублей (примерно 25 USD) за один язык, +1000 рублей за каждый дополнительный язык. В этом варианте Вы будете подключены только к каналу/каналам с разборами задач, но не к группе людей, которые решают и показывают свои решения.

Также есть VIP-вариант за 14900 рублей - любые языки, хоть на всех семи можно писать, плюс индивидуальная обратная связь от меня (Фёдора Меньшикова) по Вашему коду и по Вашим оценкам сложности - письменно в комментариях приватного репозитория. Разборы тоже в комплекте, хотя при наличии индивидуальной обратной связи их ценность существенно уменьшается.

Если Вас заинтересовало предложение - пишите мне в личку Телеграм @FyodorMenshikov до 29 мая 2021 включительно. Повторения курса ровно по этим задачам не ожидается. Возможно будут курсы по другим задачам, но на этот счёт я пока никаких обещаний не даю.

Расписание в пост не поместилось, приведу его в комментарии к посту.
👍9
Завершается набор участников на курс по деревьям. Напомню, дедлайн 29 мая включительно без указания часового пояса 😉 Кто хотел поучаствовать, но откладывал до последнего - сегодня последняя возможность присоединиться.
👍5🔥1
Я , Эмилбек Сулайманов, хочу порекомендовать вам канал Ильи Шишкова — Алгоритмический фундамент программиста. Он посвящён развитию карьерных навыков IT-специалистов: алгоритмической подготовке, soft skillz, прохождению собеседований и т.д.

На канале вы найдёте рассказы об опыте Ильи прохождения собеседований в FAANG и другие компании, авторский разбор статей о coding и system design interview, а также анонсы онлайн-встреч с интересными спикерами, которые достигли успехов в сфере IT.

Сам Илья уже 9 лет работает в крупнейшей российской поисковой IT-компании. Кроме того он участник двух финалов ICPC, автор онлайн-курсов «Пояса по С++» на Coursera, а также спикер и ведущий различных IT-конференций. Он является автором онлайн-курса «Алгоритмический фундамент программиста», который помогает прокачать навыки решения алгоритмических задач и о котором также рассказывает на своём канале.
👍264🥰1