Как стать автором
Обновить
31.65

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

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

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

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

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

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

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

Читать далее
Всего голосов 26: ↑24 и ↓2 +22
Комментарии 17

Новости

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

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

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

Читать далее
Всего голосов 17: ↑15 и ↓2 +13
Комментарии 17

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

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

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

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

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

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 4

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

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

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

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

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

Будем ждать ещё больше историй о том, как энтузиасты запускают Doom при помощи подручных вещей, чтобы расправиться с демонами ада. А пока здесь собраны некоторые удивительные примеры того, как легендарную Doom запускают на различных устройствах.
Читать дальше →
Всего голосов 41: ↑39 и ↓2 +37
Комментарии 19

Истории

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

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

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

Читать далее
Всего голосов 19: ↑18 и ↓1 +17
Комментарии 13

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

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

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

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 3

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

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

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

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

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

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

Читать далее
Всего голосов 52: ↑46 и ↓6 +40
Комментарии 86

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

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

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

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

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

Читать далее
Всего голосов 58: ↑50 и ↓8 +42
Комментарии 149

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

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

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 или без этого ключа.

Читать далее
Всего голосов 20: ↑18 и ↓2 +16
Комментарии 3

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

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

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

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

Читать далее
Всего голосов 12: ↑4 и ↓8 -4
Комментарии 33

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

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

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

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

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 88

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

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

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

Читать далее
Всего голосов 36: ↑36 и ↓0 +36
Комментарии 27

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

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

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

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

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

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

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

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

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

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 5

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

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн

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

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

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

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

Читать далее
Всего голосов 13: ↑13 и ↓0 +13
Комментарии 20

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

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

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

Читать далее
Всего голосов 8: ↑6 и ↓2 +4
Комментарии 12

Как «подправить» неправильные судоку. Алгоритм решения судоку, использующий систему ограничений

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

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

Читать далее
Всего голосов 11: ↑10 и ↓1 +9
Комментарии 11

Обнаружены шахматы для DOS… 1980 года

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

Шахматы для DOS... 1980 года! Вытащены с найденной в 2024 году системной дискеты 86-DOS (QDOS), при этом без особых проблем работают в MS-DOS 2.11, 3.31 на 86Box, MS-DOS Player, FreeDOS, DOSBox-X, NTVDM на современных ОС.

Читать далее
Всего голосов 57: ↑56 и ↓1 +55
Комментарии 103

С новым годом: GPT в 500 строках на SQL

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

В минувшем году все только и говорили об ИИ и о том, как он может всё за вас сделать.

Мне нравится, когда кто-то или что-то работает за меня. Поэтому решил: попрошу-ка ChatGPT написать за меня новогодний пост:

«Эй, ChatGPT. А ты можешь реализовать большую языковую модель на SQL?»
«Нет, SQL не подходит для реализации больших языковых моделей. Язык SQL предназначен для выполнения запросов к данным, хранящимся в РСУБД и для управления этими запросами. Для реализации большой языковой модели требуются сложные алгоритмы, обширные датасеты, а зачастую — и фреймворки для глубокого обучения. SQL всеми этими возможностями не обладает.»

Что ж, лишний раз убеждаешься, что, если хочешь что‑то сделать хорошо – сделай это сам.

Давайте же воодушевимся этим оптимистическим планом и реализуем большую языковую модель на языке SQL.

Читать далее
Всего голосов 215: ↑211 и ↓4 +207
Комментарии 20

Решаем головоломки и настраиваем среды Kubernetes: подборка новых языков программирования

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

В блоге beeline cloud мы уже делились дайджестом свежих DIY-материалов о контейнерах, DevOps и архитектуре. Сегодня расскажем, кто и зачем разрабатывает новые языки программирования — выбрали те, что появились на свет за последние три года. Некоторые из них написаны энтузиастами для решения головоломок на конкурсах, а другие — разработчиками крупных организаций для боевых задач.

Читать далее
Всего голосов 10: ↑9 и ↓1 +8
Комментарии 5

Поиск ошибки

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

Задача родилась у нас в водном походе в Карелии. Мы попали в разгар черники и собирали чернику буквально походными котелками, потом ели ее со сгущенкой, или варили компот. Задача такая:

 «В походный котелок помещается X кг черники. Сколько кг черники поместится в этот котелок, если уминать чернику ложкой?» Краевыми эффектами пренебречь. Задачу предлагалось решить в уме. Никто не справился.

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

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 12

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