Обновить
28.47

Занимательные задачки

Разминаем мозги

Сначала показывать
Порог рейтинга
Уровень сложности

Об одной изящной задаче

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров16K

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

Имеется функция magic(), принимающая три целочисленных аргумента, в теле которой определены константы a, b, c, являющиеся натуральными числами. Требуется определить значения констант a, b и c за минимальное количество вызовов данной функции.

Посмотреть разбор задачи

Простой вопрос по Kotlin Coroutines или как не потеряться в измерениях

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров3.9K

Простой вопрос по Kotlin Coroutines для начинающих!

Проверь свои знания в этой небольшой статье.

Если у тебя есть свои интересные вопросы, буду рад увидеть их в комментариях :)

Читать далее

Java Тренажер

Время на прочтение3 мин
Количество просмотров15K

Хочу представить вашему вниманию бесплатный курс Java Тренажер, который недавно опубликовал на платформе Stepik.

Java — это объектно-ориентированный язык программирования, разработанный компанией Sun Microsystems (позднее приобретённой компанией Oracle). Он был выпущен в 1995 году и с тех пор стал одним из наиболее популярных языков программирования благодаря своей платформенной независимости, простоте использования, масштабируемости и широкому спектру применения.

Читать далее

История одной очереди

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров22K

В одно воскресенье довелось мне стоять в очереди на избирательный участок №8134 в Алматы. Простоял я там 4 часа, а некоторые и того больше. И как-то совершенно случайно вспомнил, что в институте я учился на специальности “системы и сети массового обслуживания”, а тут у нас как раз такая сеть, которую можно попробовать рассчитать. А заодно ответить расчётами на некоторые вопросы.

Уважаемые кроты, давайте посчитаем

«Психологика» в кубе

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров3.7K

Проходил тест у психиатра. Хорошо, что не стал с ним спорить о том, что же куб или не куб нарисовали в тесте канадские учёные. Тест я благополучно прошёл. Но остались сомнения: чем мог для меня закончиться спор с психиатром? Ведь теперь запись врача в электронную медицинскую карту не так легко оспорить и исправить пациенту. А уж смотреть то эту электронную карту может не только пациент.

Читать далее

Реальность обладает поразительным числом деталей

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров16K

Мой отец эмигрировал из Колумбии в Северную Америку, когда ему было 18. Сделал он это в поисках лучшей жизни. Для меня и моего брата это значило — проводить много времени на уличном холоде. Отец выбрал путь улучшения своей судьбы через улучшение того, что его окружает. Меня и брата «добровольно» завербовали в помощники по работам над принадлежащими нам постройками.

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

Читать далее

Вызовы автоматизации: NFC-метки на металлической поверхности

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.1K

О самой технологии NFC (Near Field Communication) написано множество статей, в том числе и здесь на Хабре. Активно данная технология находит применение в промышленности.  В частности, компанией «Сибур», ведущим игроком в области нефтехимической промышленности, в целях повышения эффективности и для обеспечения контроля и автоматизированного сбора информации внедрены тысячи защищенных NFC-меток. «Защищенность» подразумевает наличие сертификата по соответствующему классу взрывозащиты. Вообще на объектах такого уровня все устройства должны быть взрывозащищенными, так как их применение предполагается во взрывоопасных средах.

Читать далее

Квест в честь миллиона студентов на курсе для начинающих программистов

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2.4K

Хабр, привет! Давно я не писал этих слов... На связи Тимур, автор серии курсов по программированию "Поколение Python". ?

Последний раз я публиковал статьи около 10 лет назад. За это время произошло много интересного, обязательно расскажу об этом, но позже. А пока хочу поделиться новостью: на нашем курсе для начинающих питонистов набралось более миллиона студентов. Это первый курс на платформе Stepik с таким количеством студентов.

Для нас и для Stepik это очень большое событие, и мы бы хотели разделить его с нашими студентами и со всеми, кто изучает программирование вообще. Поэтому мы проводим онлайн-квест: его участники будут решать задачи по программированию, математике, логике, а самые успешные и удачливые получат призы. Ведь программирование — это не только про написание кода, это про умение решать самые разные задачи.

Читать далее

Мем, ставший легендой: Doom можно запустить на чем угодно

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров26K

Фанаты ретро-игр не дают умирать любимым играм, делая модификации или портируя их на современные версии консолей и ПО. И особняком здесь стоит культовая игра Doom 1993 года, которую стали запускать не только на ПК и консолях, а на любых устройствах, у которых есть экран и процессор. И это стало своего рода мемом. Игра, созданная на движке id Tech 1, была разработана так, что для игры требовались лишь самые скромные настройки.

С течением времени после выхода Doom развивались многие технологии. В 2007 году началась революция, когда Apple выпустила свой первый iPhone, и вскоре дисплеи стали неотъемлемой частью XXI века, интегрируясь во всё больше и больше продуктов и повседневных инструментов: холодильники, тостеры, кассовые аппараты, автомобили, электронные сигареты и даже тесты на беременность. Вместе с этим появилась возможность запустить Doom на всех этих устройствах. Таким образом, родилась концепция «Doom running on everything» (DROE), породившая культуру, в которой в Doom играли на банкоматах, калькуляторах, кубиках LEGO, картофеле и даже на вышеупомянутых тестах на беременность.

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

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

«Физика для программистов» — как физтехи применяют её в приложениях. Бросок объекта под углом к горизонту

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров8.2K

Данная статья входит в цикл, освещающий задачи на моделирование физических процессов на факультете МТФИ ВШПИ. Мы написали приложение на Flutter и сайт на React для моделирования броска, расскажем о нашем опыте в этой статье.

Читать далее

«Физика для программистов» — как физтехи применяют её в приложениях. Маятники

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2.6K

Данная статья входит в цикл, освещающий задачи на моделирование физических процессов на факультете МФТИ ВШПИ. В этой части речь пойдёт про задачу моделирования поведения маятника: коротко разберём теорию, которая лежит в основе модели, немного подумаем над архитектурой и напишем небольшое приложение на связке Python + Tkinter. Реализация будет поддерживать исследование различных маятников с помощью самописных динамических графиков, в которые пользователь может ввести собственные формулы.

Читать далее

Получаем деньги за подбрасывание монет стоимостью в миллионы долларов

Уровень сложностиСложный
Время на прочтение6 мин
Количество просмотров38K

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

Начнём с очевидного.

Ожидаемая стоимость при выборе зелёной кнопки цвета составляет $25 млн.

Многие люди выберут красный. Некоторые из этих людей знают, что ожидаемая стоимость зелёного цвета составляет $25 млн, и всё равно выбирают красный.

Читать далее

Сосульки на свесах скатной кровли: механизм образования и методы борьбы с ними

Время на прочтение24 мин
Количество просмотров17K

Островерхая скатная и плоская крыша дома в ИЖС: Битва архаично-романтичного  «дизайна» с инженерной рациональностью.

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

Если учесть, что частный дом в значительной степени строят ради «показать себя», то его крыша становится скорее ярмаркой тщеславия, чем ответственной инженерной конструкцией. (см.рис.1.)

Читать далее

Ближайшие события

Новый рекорд производительности FizzBuzz

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров6.2K

283 ГБ/с на AMD Ryzen 9 7700X.

Сборка (протестирована с GCC 13):

g++ fizzbuzz.cc -march=native -o fizzbuzz -O3 -Wall -std=c++20 -fno-tree-vectorize -fno-exceptions

На сборку уходит несколько минут. В зависимости от CPU можно добиться повышенной производительности с -fno-tree-vectorize или без этого ключа.

Читать далее

Задачи от Tinkoff для Junior Java developers

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров28K

Отличная тренировка для начинающих разработчиков на знание Java core. В статье будет представлено описание 5 задач с разным уровнем сложности.

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

Читать далее

Закон парадокса в логике и математике

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров6.8K

В результате поиска в Интернете выяснилось, что термин «закон парадокса» в научной литературе практически не встречается. Исключением в настоящее время является статья по литературоведению, моя статья в Хабре и статья, которая в данный момент находится в стадии рецензирования в одном научном журнале.

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

Читать далее

Ваш телефон – секретное оружие: Как превратить его в веб-камеру и оживить ваши онлайн-встречи! (Если у вас Linux)

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров17K

Что объединяет удаленного сотрудника, на долю которого выпало много видеозвонков, зарождающуюся звезду YouTube и начинающего стримера? Все они, рано или поздно, осознают неотъемлемую важность повышения качества изображения, которое предоставляется их зрителям. А еще у них наверняка есть какой-нибудь Xiaomi Nano Porridge 10 Pro с довольно неплохой матрицей. И я не исключение, бросив вызов этой проблеме по-программистски и постаравшись обойтись без больших финансовых затрат, решением которой и хочу поделиться с вами. Добро пожаловать под кат!

Читать далее

Алгебра музыкального текста

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров4.6K

Пшеничников С.Б., Сотникова Т.В.

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

У звука имеется четыре свойства: высота, длительность, громкость и тембр. Тембр пока не рассматривается. Словарь алгебры музыкальных текстов строится на основе нотной раскладки для фортепиано и современной нотной нотации.

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

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

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

Для решения задачи требуется найти преобразование канонического нотного текста в «нитку». И как всегда для нового применения алгебры необходима правильная координатизация предметной области. В данной случае каждому используемому нотному знаку  и символу современной нотной нотации требуется поставить в соответствие свой порядковый номер (натуральное число).

Читать далее

Оптическое распознавание символов и разбор чеков Rimi

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров4.2K

Некоторое время назад в нашей стране крупные сети магазинов стали вводить электронные чеки. В частности, магазины сети Rimi. Эти чеки покупатель получает по почте в виде PDF документа. У меня скопилось много таких чеков, и мне стало интересно посмотреть на разного рода статистику: например, на цены на различные товары в разное время, сколько чего было приобретено и т. п.

К сожалению, PDF документы, которые покупатели получают – это картинка. Получить интересующую меня информацию из них без оптического распознавания символов (OCR) невозможно. Однако, OCR, как оказалось, не на столько хорош, чтоб идеально справиться и точно всё распознать с первого раза. И это несмотря на то, что чеки достаточно хорошего качества: строки ровные, нет никаких артефактов в виде тёмных пятен, буквы достаточно одинаковые (правда присутствуют несколько разных шрифтов).

Читать далее

Обратный маятник простым PID-регулятором

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров4.2K

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

Читать далее

Вклад авторов