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

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

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

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

Логическая головоломка из университетского квеста

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

"Параллельные Измерения" — одна из интересных головоломок игры Puzzle Hunt Мельбурнского Университета 2014 года. Она была последней в заключительном пятом акте игры и предшествовала финальному мета-заданию.

Читать далее

Новости

Конкатенация чисел и делимость на 13 — задачка от Клайва Фрэйзера

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

Дан массив с числами, в десятичном представлении - из них можно удалить какие-то, а то что осталось конкатенировать. Для N чисел это даёт 2^N-1 возможных результатов (нельзя удалить все числа) - и нам интересно сколько из этих результатов делятся нацело на 13.

Для маленьких массивов можно написать простой перебор, но автор предлагает N=400000 - у одного из пользователей это сразу вызвало реакцию "2 в степени 400000 - это невозможно перебрать". Действительно, перебором тут не справиться :)

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

Таинственный Незнакомец...

Как мы реализовали отказоустойчивый WireGuard в трёх зонах Yandex Cloud

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

Расскажем, как мы сделали отказоустойчивый WireGuard-сервер в Yandex Cloud, раскинув его на три зоны доступности. Получилось просто, надёжно и без сложных кластеров.

Мы не рассматриваем настройку самого WireGuard, конфигурацию групп безопасности, настройку VPC, NLB и прочее. Вся логика сосредоточена на том, чтобы обеспечить автоматическое переключение между зонами при сбоях. Сеть VPN-клиентов — 172.28.90.0/24 — должны быть доступна с любой из трёх зон.

Читать далее

Как мы сделали битву разработчиков

Время на прочтение9 мин
Количество просмотров2.6K
image
Вот тут два игрока соревнуются, кто быстрее решит задачу

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

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

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

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

В итоге получились очень забавные соревнования.
Читать дальше →

Истории

SQL HowTo: немного двоичной логики (Advent of Code 2024, Day 24: Crossed Wires)

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

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.

Рекурсивно вычисляем логические выражения и разбираем устройство двоичного сумматора.

Читать далее

Почему окружность и гипербола — это почти одно и то же? Кривые второго порядка и немного космоса

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

Привет, меня зовут Диана, я математик, а еще пишу для хабраблога МТС. В прошлый раз публиковала задачу про адвент-календарь — спасибо всем, кто решал и комментировал! А сегодня хочу немного рассказать про милый моему сердцу кусочек математики — часть аналитической геометрии, которая повествует о кривых второго порядка.

Кривые второго порядка — это не просто красивые абстракции. Они прочно вплетены в вашу повседневность: параболы помогают сфокусировать сигнал вашего Wi-Fi, гиперболы — определить ваше местоположение, а эллипсы — это орбиты спутников.

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

Читать далее

SQL HowTo: работаем с массивами (Advent of Code 2024, Day 23: LAN Party)

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

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.

Применяем простые операции над массивами, чтобы определить связность графов.

Читать далее

ChatGPT: как не нужно его использовать

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

Текст выходного дня, что намекает на несерьезность. И да: это – только один из множества сценариев, как не стоит использовать ChatGPT. Среди других и любимая тестировщиками задача по подсчету букв R в слове strawberry. И просить написать стихотворение – тоже так себе идея.

Несколько дней тому назад OpenAI обновила (обновил) работающую под капотом ChatGPT версии 4о модель-генератор изображений, заменив старушку DALL-E 3. Не расстраивайтесь, DALL-E 3 все еще доступна, если вам почему-то захочется к ней вернуться. Новая модель, если верить заявлениям ее создателей, замечательно понимает, что именно от нее хотят, принимая во внимание содержание целого диалога, а не только последнего промпта, аккуратно и точно обращается с текстом. И вообще легка и приятна в общении, то есть в использовании.

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

Читать далее

Создавай, а не решай: мы пошли против мейнстрима и придумали АНТИолимпиаду

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

Как часто на олимпиадах вам казалось, что задания могли бы быть интереснее? Или даже возникала уверенность, что вы бы сделали лучше? Примерно так и появилась идея соревнования, где участники не просто кодят (что мы, безусловно, уважаем), а придумывают интересные задачи разного уровня сложности.

Читать далее

«Решаем задачки про ненормальных детей», или Как приблизить математику к реальности

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

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

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

Давайте разбираться

Rust в режиме «жесть»

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

В этом посте будет разобрано, как написать приложение на Rust с применением самого минимального API, возможности которого искусственно ограничены (например, не применяется динамическое выделение памяти). Предполагается, что читатель немного знаком с языком Rust.

Читать далее

Винтик и Шпунтик — Сhallenge продолжается

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

Некоторое время назад я объявил челлендж имени Винтика и Шпунтика. Суть его — в подсчете числа решений задачки, почерпнутой из математической олимпиады для 7 класса. Изначально я рассчитывал на то, что лучшие умы Хабра разберутся с задачей за месяц. Однако с тех пор прошло 10, и не сказать, чтобы обозначились какие-то серьезные прорывы. Но некоторые новые идеи появились. Поэтому сегодня мы подведем промежуточные итоги нашего челленджа, а также разберем некоторые подходы, которые позволяют двигаться вперед в нашем нелегком деле.

Читать далее

SQL HowTo: оконные функции (Advent of Code 2024, Day 22: Monkey Market)

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

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.

Используем оконные функции, чтобы вычислить "третью производную".

Читать далее

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

8 апреля
Конференция TEAMLY WORK MANAGEMENT 2025
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань
20 – 22 июня
Летняя айти-тусовка Summer Merge
Ульяновская область

Нужен ли код в книге Занимательных Задач по программированию?

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

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

А как же наш любимый программизьм? :) Мне известно не так много примеров. Зачем вообще программисту задачи? Для начинающего актуально, конечно, на них "нарабатывать практику" (или когда уже не новичок но осваивает новый для себя язык программирования) - но не только это. Задачки кроме того дают идеи. Программисты же народ творческий и хотя бы подсознательно постоянно в поиске идей.

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

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

Что ж, давайте посмотрим...

Исповедь нигилиста

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

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

Докладываю:

а) Она таки вертится
б) Наклон земной оси примерно 23 градуса
в) Мы точно движемся вокруг солнца

Юрий Эдуардович, подробности под катом

SQL HowTo: моделирование против подсчета (Advent of Code 2024, Day 21: Keypad Conundrum)

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

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.

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

Читать далее

От кода до кандидата: почему разработчики – лучшие рекрутеры

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

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

Читать далее

Прикрутил нейросеть к боту для поиска стран (часть 3 про нейросети)

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

Привет! Я Лёша, backend‑разработчик, который любит путешествовать. Зато я увлёкся нейронками и доработал самописный Telegram-бот, который мониторит цены на туры и перелёты. Статья будет как раз про ИИ с точки зрения внедрения в пет-проект.

Под катом узнаете:

— где стоит применить нейронки, а где можно обойтись NLP;

— как локально крутить LLM и почему стоит воспользоваться API;

— как подбирать промпты, чтобы получать от ИИ не просто ответы, а реально полезную информацию;

— зачем вообще в боте для поиска дешёвых авиабилетов (и любых сообщений) нейросети и почему в нём осталась лемматизация / NLP, а в некоторых местах регулярки для поиска сообщений.

Читать далее

SQL HowTo: кратчайший путь «туда и обратно» и его самосоединение (Advent of Code 2024, Day 20: Race Condition)

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

В этой челлендж-серии статей попробуем использовать PostgreSQL как среду для решения задач Advent of Code 2024.

Возможно, SQL не самый подходящий для этого язык, зато мы рассмотрим его различные возможности, о которых вы могли и не подозревать.

Дважды применяем волновой алгоритм для нахождения единственного кратчайшего пути и самосоединение для поиска "читов".

Читать далее

Определение пользовательских сценариев энергопотребления по встроенным в системную плату датчикам и Python + LightAutoML

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

Привет, Хабр!

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

И хотя лично мне это кажется контр-продуктивным — имхо, сугубо имхо, лучше вообще не связываться с системой, которая может быть скомпрометирована, и получать данные из дополнительного источника, никак с тестируемой системой не связанного. Ни гальванически ни, тем более, в рамках одной операционной системы. Умная розетка (не обязательно от Сбера) казалась вполне себе доступной по цене альтернативой амперметру. Но вопрос был задан, и спустя год (ну извините, это все-таки pet-проект, а не основная работа) на него есть ответ:

Читать далее
1
23 ...