Типичный программист
81.4K subscribers
2.67K photos
894 videos
8 files
7.45K links
Всё самое интересное по программированию

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

VK: vk.com/tproger

Регистрация в перечне РКН: https://tprg.ru/mJwo
Download Telegram
Предлагаем вам немного размять мозги и проверить, насколько хорошо вы умеете строить алгоритмы и системно искать решения

У вас есть 8 металлических шариков, которые выглядят одинаково. Один из них — тяжелее остальных. Также у вас есть весы с двумя чашами, но они настолько старые, что выдержат только два измерения, после которых сломаются.

Как с помощью весов всего за два измерения найти один тяжелый шарик?

#задачки
Решение задачи про шарики и весы

Недавно мы решали задачку про 8 металлических шариков, один из которых, хоть и выглядит также, тяжелее остальных. И про весы с чашами, с помощью которых нужно было найти этот шарик всего лишь за 2 взвешивания.

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

https://tprg.ru/ZAJK

#задачки #собеседование
Можно ли написать функцию, меняющую местами значения переменных, не используя при этом временные переменные?

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

В статье подробно разобрали их: https://tprg.ru/CQJM

#задачки #собеседование
Как думаете, сколько существует способов добраться до N-й ступеньки, если за один шаг вы можете подняться на одну или две ступеньки?

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

А как? Простым языком объяснили в этой статье: https://tprg.ru/zulL

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

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

На какое место лучше усадить первого посетителя?

#задачки
Пришло время слегка размять мозги перед праздниками

Сколько 4-значных паролей можно составить при условии, что там не должна встречаться последовательность цифр «13»? Пароль должен состоять только из цифр от 0 до 9.

#задачки
Йо-хо-хо, и бутылка рому: срочно проверяем состояние своих извилин 1 января

Естественно, задачкой про алкоголь.

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

Как лавочник сумел точно отмерить четыре галлона с помощью этих двух ёмкостей?

#задачки
Задача на работу со скобками умеренной сложности

Как реализовать алгоритм для вывода всех корректных (правильно открытых и закрытых) комбинаций из n пар круглых скобок?

Например, при вводе «3» мы получаем:
( ( () ) ), ( ()() ), ( () )(), ()( () ), ()()()

Решение и подробное объяснение: https://tproger.ru/problems/working-with-brackets/

#задачки
Задачка на логику: как вытащить носки одинакового цвета, не заглядывая в комод?

Предположим, у вас в ящике комода лежит 40 синих носков и 40 коричневых. Какое минимальное количество носков вам надо вытащить из ящика, не заглядывая в него, чтобы гарантированно получить пару носков одного цвета?

Правильный ответ объяснили в этой статье: https://tproger.ru/problems/colored-socks/

#задачки
Адовые задачи с собеседований для программистов

А вы тоже не любите все эти задачки с собеседований? Вот и мы. И это притом, что реально адовых задач вы скорее всего ещё даже не видели!

Собрали топ самых заковыристых задач с собеседований. А бонусом написали к каждой объяснение с примерами кода. Теперь если встретите такие задачи, они вас точно не собьют с толку:

https://tproger.ru/articles/zadachi-s-sobesedovanij-dlja-programmistov/

#задачки #собеседование
Как отдохнуть и провести время с пользой? Например, порешать заковыристые логико-математические задачи

Парадокс Монти Холла, задача про эскалатор и гнутую монету — решаем и объясняем эти и ещё несколько нетривиальных задач:

https://tproger.ru/articles/7-zakovyristyh-logiko-matematicheskih-zadach/

#задачки
Кстати про задачки с собеседований

Вообще, в программировании для одной задачи редко существует какое-то одно единственно правильное решение. И умение правильно подать и защитить своё — тоже важный навык. Кто знает, вдруг, ваше решение «ест» на 1 байт меньше памяти, чем собеседующего вас сеньора?

Так и поступил наш читатель Олег. Мы тут на днях разбирали алгоритмическую задачку про острова. И получили ещё одно интересное решение. Мы в Tproger такое любим и уважаем, поэтому решили разобраться в сложности обоих алгоритмов подробнее:

https://tproger.ru/problems/algoritmicheskaja-zadacha-pro-ostrova/

#задачки
​​Алгоритмы сортировки — одна из самых популярных тем на собеседованиях

А зачем вообще нужны алгоритмы сортировки, если исключить собеседования? Как часто мы применяем их на практике, а если и применяем, то правильно ли?

Давайте разбираться: https://tproger.ru/articles/zachem-nuzhny-algoritmy-sortirovki/

#задачки #собеседование #алгоритмы
Нетривиальная задачка для программистов про маркетплейс

Представьте, что вы — разработчик маркетплейса. У вас есть 2 миллиона товаров от продавцов из разных стран. Вам нужно сравнить товары от разных продавцов, распределить по категориям и попасть в ожидания покупателя.

Решение: https://tprg.ru/TyLI

#задачки #ml #нейросети
Задачи по Go — отличный вариант прощупать все тонкости языка на практике для новичков

Вместе с Go-разработчиками из МТС собрали топ популярных задач на Golang. Попробуйте решить несколько и проверить, насколько хорошо вы разбираетесь в языке:

https://tprg.ru/hqie

#go #задачки
Решаем популярные задачи с асинхронным кодом на JavaScript

На собеседованиях начинающим Frontend-разработчикам часто попадаются задачи на асинхронный код.

Вместе с преподавателем Elbrus Bootcamp выбрали несколько популярных задач, с которыми выпускники буткемпа чаще всего сталкиваются на интервью, и разобрали логику их решения: https://tprg.ru/ifXs

#задачки #фронтенд #javascript
Логическая задача про бракованные батарейки

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

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

Какие именно нюансы и как решать эту задачку — рассказали в небольшой заметке: https://tproger.ru/problems/logicheskaja-zadacha-pro-brakovannye-batarejki/

#задачки #логика