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

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

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

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

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

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

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

Уважаемые кроты, давайте посчитаем
Всего голосов 112: ↑97 и ↓15+82
Комментарии70

Новости

Обнаружены шахматы для 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 мин
Количество просмотров37K

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

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

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

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

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

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

Папа-шпион создаёт креветок: угадываем профессии специалистов Positive Technologies по рассказам их детей

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

«Где-то в Москве, где много этажей, кафешек и офисов, а на входе логотип, находится папина работа. Обычно папин день выглядит как подъём, кофе, он много печатает и сохраняет файлы, и так до вечера. Таким образом папа улучшает программу для защиты телефонов и компьютеров».

Так ребёнок описал работу своего папы — старшего программиста, который участвует в разработке PT XDR. Недавно мы решили разузнать, чем же на самом деле занимаемся. И отправились за ответом к самому достоверному источнику — нашим детям возрастом от 5 до 9 лет.

Некоторые рассказы правдиво отразили будни айтишника. А некоторые вышли совершенно фантастическими. Лучшие истории мы собрали под катом. Ещё подготовили квиз: угадайте, чем на самом деле занимаются родители каждого из юных рассказчиков.

Читать далее
Всего голосов 73: ↑70 и ↓3+67
Комментарии21

Истории

Внутренний Я(ндекс)

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

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

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

Читать далее
Всего голосов 469: ↑463 и ↓6+457
Комментарии287

Почему x^0 = 1 наглядно

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

Традиционное определение для операции возведения в натуральную степень (или целую положительную) вводится примерно следующим образом:

Возведе́ние в сте́пень — арифметическая операция, первоначально определяемая как результат многократного умножения числа на себя.

Но более точная формулировка всё же другая:

Возведение числа X в целочисленную степень N — арифметическая операция, определяемая как результат многократного [N по модулю раз] умножения либо деления единицы на число X.

Разбираемся под катом! >>
Всего голосов 74: ↑65 и ↓9+56
Комментарии123

Совершенные числа. Удивительная история поисков сверкающих звёзд в бесконечном числовом мире

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

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

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

В одной из таких загадок, как в зеркале, отражается вся история математики. Эта задача связана с рядом чисел, которые ещё в глубокой древности называли «совершенными». Последующие поколения математиков добавляли в копилку знаний человечества новые числа этого ряда. Процесс ещё не окончен и поиски продолжаются. С совершенными числами связано много тайн и не разрешённых до сих пор загадок.

Что же в них такого особенного?
Всего голосов 65: ↑62 и ↓3+59
Комментарии12

Какова вероятность найти слово fuck в случайной последовательности из 20 букв?

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


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


Я решил всерьёз выяснить, чему равна эта вероятность в зависимости от длины случайной строки? Можно ли получить явную математическую формулу для ответа? Что, если взять другое слово? Что, если взять другой алфавит?


Обо всём по порядку.

Читать дальше →
Всего голосов 55: ↑55 и ↓0+55
Комментарии79

Моя любимая задача для собеседований по программированию

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

В сети есть уйма постов и видео, где разбираются ответы на вопросы LeetCode. Но обычно рассмотрение в них происходит с позиции соискателя, а не работодателя. В этой же статье я приведу разбор собственной задачи по программированию, которую использовал при приёме людей на работу в Amazon, Google и Microsoft.
Читать дальше →
Всего голосов 131: ↑126 и ↓5+121
Комментарии170

Что в голове у змейки? Обучение нейросети играть в «Snake» генетическим алгоритмом

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

В 2020, когда случился локдаун, и к большому сожалению, появилось очень много свободного времени, мне захотелось познакомиться с Python. Начальный опыт c Pascal был еще со школы и универа, поэтому оставалось лишь придумать задачу и пойти её самоотверженно решать на питоне. Интересной задачей показалось смастерить игру змейку, прикрутить к ней мозги в виде перцептрона с парой скрытых слоёв, и путем кнута и яблока обучить цифровое животное выживать в жестоких реалиях двумерного мира :)                               

«У самурая нет цели, есть только путь»

Первый блин на производстве не отличается красотой, но опыт был получен. Наиболее привлекательным мне пришелся генетический алгоритм: отбор успешных змеек, скрещивание, частичная мутация генов и так тысячи раз до результата. Змейки, без указания им правил выживания, в тысячном поколении «понимали», что нужно стремиться съесть яблоко и никуда не врезаться, это вызывало ощущение прикосновения к чуду "It's Alive!!!"

Спустя пару лет, закончив курс по аналитике данных, появилось желание переписать проект, попрактиковаться в более серьезных разделах python и сделать тренажёр со сбором статистики.

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

Двухтрубные системы отопления тупикового и попутного типа. Мнимая магия «петли Тихельмана»

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

Двухтрубные системы отопления тупикового и попутного типа. В чём разница и что об этом говорят современные строительные нормы.

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

Теперь настала очередь рассмотреть особенности проектирования и эксплуатации двухтрубных систем, которые крайне популярны у частных домовладельцев в ИЖС.

Так же двухтрубные вертикально-стояковые системы отопления пытаются применять и в многоквартирных домах.

Далее мы рассмотрим гидравлический расчёт систем для одного этажа частного дома с периметром в те же 50м для дом 10х15м по внутренним стенам (150м.кв на этаж).

А позже попытаемся применить те же подходы для максимальной высоты 50м в стояковой системе высотного дома.

Тупиковая система

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

Читать далее
Всего голосов 74: ↑70 и ↓4+66
Комментарии173

Феномен постоянной Капрекара. Таинственное «число великой радости» 6174

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

Чем же так занимательно число 6174? Казалось бы, это обычное натуральное чётное четырёхзначное число. Не лучше и не хуже, чем, скажем, соседние 6173 и 6175. Оно даже не является простым. Тем не менее, это число имеет своё собственное название — постоянная Капрекара. А ещё оно относится к так называемым «числам великой радости».

Давайте разбираться, что же в этом числе такого особенного. Займёмся несложными вычислениями...

Что же такого особенного в числе 6174?
Всего голосов 108: ↑103 и ↓5+98
Комментарии37

Парадокс Гранди. Как современные школьники повторяют ошибку Лейбница и Эйлера

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

Было у отца два сына. И оставил он им наследство — камень драгоценный. А чтобы никого не обидеть, поставил он перед сыновьями условие: нельзя тот камень ни пилить, ни продавать. Можно только по очереди владеть им. И повелось так — каждый год камень переходил от одного брата к другому. Потом камнем по очереди владели их потомки, потом потомки их потомков… И длилось так вечно.

Этой притчей итальянский математик, монах и философ Гвидо Гранди пытался объяснить решение задачи, которую сам же и сформулировал. В 18 веке её считали парадоксом и предлагали разные варианты решения. Долгое время она не давала покоя математикам.

Задача Гранди формулируется очень просто: какой результат мы получим, если будем до бесконечности складывать 1 и -1?

Читать далее
Всего голосов 103: ↑93 и ↓10+83
Комментарии285

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

Присасывание кораблей друг к другу при  обгоне на параллельных курсах

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

Версия без уравнения Бернулли.

История с «феноменом» присасывания судов друг другу при обгоне на малых  расстояниях началась в далёком 1911 году, когда столкнулись гигантский суперлайнер того времени «Олимпик» (старший брат «Титаника») и крейсер ВМС Британии «Хоук».

Действия происходили так:

Крейсер "Хоук" шел попутным курсом на расстоянии около 3,5 миль (6,5 км) от «Олимпика».

Через какое то время, крейсер нагнал «Олимпик», и они пошли почти параллельными курсами, под небольшим углом друг к другу, медленно сближаясь. Оба судна шли со скоростью 15 узлов (около 28 км/час).

Потом произошло нечто необъяснимое: Внезапно крейсер «Хоук» резко вильнул влево и, как писали многочисленные газеты, буквально «бросился» на «Олимпик».

Читать далее
Всего голосов 59: ↑56 и ↓3+53
Комментарии55

До последнего байта: минимальный вариант Hello World для .NET

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

Вот вам тупой вопрос, который вы сами, наверное, никогда себе не задавали. Каково минимальное количество байт, которые необходимо сохранить в исполняемом .NET-файле, чтобы CLR напечатала "Hello, World!" в консоли стандартного вывода?

Читать далее
Всего голосов 99: ↑98 и ↓1+97
Комментарии73

Математическая продлёнка. Математика кривого пропеллера

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

Вы, наверняка, знаете отчего "гнётся и рвётся" пропеллер на цифровых фото и видео. А какую именно форму принимают лопасти винта? Как зависит их видимая форма от скорости вращения? И причём здесь гиперболы?

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

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

Где решать задачи по программированию, чтобы пройти путь from zero to hero

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

Если вам о чём-то говорят фамилии Зив, Хомченко и Рымкевич, иди сюда, дай обниму, бедолага-олимпиадник, то вы наверняка знаете, как важно прорешивать задачи для полноценного, осознанного и глубокого понимания изученного материала. Когда нет или совсем мало реальной практики, задачи дают возможность покрыть практикой все теоретические знания, погрузиться в неожиданные выводы, сложности, баги, препятствия. Более того, даже если практики достаточно, задачи помогают относительно быстро, комплексно и глубоко проработать типичные и нетипичные ситуации, возникающие в разработке (любой другой науке). Это всегда безопасный (никто не взрывает лабораторию и не роняет прод), доступный и удобный способ подробно разобраться в предмете. Определённо, программирования это касается в первую очередь.

Читать далее
Всего голосов 67: ↑66 и ↓1+65
Комментарии25

Соблюдаем дистанцию, как топологи

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

За минувшие пандемийные годы кто только не прошёлся по этой картинке, обсуждая невозможность выполнения такого требования на плоскости! Теперь, когда страсти поутихли, мне бы хотелось обсудить естественное математическое развитие этой темы в форме вопроса:

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

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

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

Как вавилонянам удалось вычислить √2 с точностью до шести знаков после запятой?

Время на прочтение5 мин
Количество просмотров31K
Эта изготовленная примерно в 1800-1600 годах до нашей эры глиняная табличка свидетельствует, что древние вавилоняне смогли аппроксимировать квадратный корень двух с точностью 99,9999%.

Как им это удалось?

Читать дальше →
Всего голосов 101: ↑97 и ↓4+93
Комментарии63

Математическая продлёнка. Рисуем по клеточкам

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

Продолжаем серию заметок для занятий математического кружка. Героем нашего сегодняшнего рассказа будет листок в клеточку. Этот образ стал своеобразным символом школьной математики. На одних из нас он навевает депрессивную тоску, а на иных, действует, как возбудитель, взывая маниакальное желание что-нибудь формулировать, строить, решать и доказывать. Равнодушных "к тетрадке в клеточку", я приглашаю просто порисовать что-нибудь: косичку или лабиринт, или, на худой конец, енота. А мы пока обсудим вот какие клеточные вопросы:

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

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