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

Все потоки

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

Интерактивный учебник для подготовки к алгоритмической секции собеседования

Спортивное программирование *Алгоритмы *

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

Итак, вот сама задача
Рейтинг 0
Просмотры 101
Комментарии 0

Новости

МКБ Реактор глазами стартапа: как работает ускоритель и какой от него толк

Блог компании Московский кредитный банк Машинное обучение *Развитие стартапа Финансы в IT
Мегапроект

Привет, Хабр! Меня зовут Дмитрий Ермолич, я работаю генеральным директором в компании KD-systems. Сегодня хочу рассказать всем товарищам-стартаперам об опыте нашей команды в бизнес-акселераторе МКБ Реактор. Вероятно, ребята из МКБ вдохновились примером швейцарского ЦЕРНа и создали свой ускоритель. Только не элементарных частиц, а финтех-проектов, чтобы привлечь для решения своих задач айтишников разных стран, взглядов и технологий. Посмотреть, что из этого вышло, приглашаю под кат.

Читать далее
Рейтинг 0
Просмотры 43
Комментарии 0

Нейронная сеть для ведения боевых действий. Какая война может быть с технологически развитой страной?

Big Data *Анализ и проектирование систем *Алгоритмы *Будущее здесь

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

В атаку!
Всего голосов 1: ↑0 и ↓1 -1
Просмотры 425
Комментарии 0

Почему идентификация лиц невозможна — так, как этого хочет заказчик?

Искусственный интеллект Поисковые технологии *Алгоритмы *IT-инфраструктура *Будущее здесь

Кто все эти люди и кто из них я?

Ща разберемся?
Всего голосов 4: ↑2 и ↓2 0
Просмотры 471
Комментарии 2

Запускаем DOS игру в браузере

Разработка веб-сайтов *WebAssembly *
Tutorial

В 2022 году мало кого можно удивить DOS игрой в браузере. Благодаря dosbox они доступны на многих платформах. А поддержка браузера появилась с развитием компилятора emscripten. js-dos один из самых заметных проектов портирования dosbox в браузер. Последняя версия js-dos уже имеет достаточную производительность для комфортной игры в такие игры как Duke, Doom, C&C, Red Alert, WarCraft и многие другие.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 406
Комментарии 0

Как управлять распределенными командами, достигать целей и отвечать за результат — обсуждаем с Head of PMO СберМаркета

Блог компании СберМаркет Управление разработкой *Управление проектами *Управление продуктом *Управление персоналом *

Глеб Корсунов, CBDO Holyweb, побеседовал с руководителем проектного офиса СберМаркета Дмитрием Ирешевым о том, как построить грандиозные планы и достичь их, и почему правильно организованная коммуникация сотрудников позволяет не потерять мотивацию.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 111
Комментарии 1

Бесплатные инструменты на основе OpenAI Codex

Программирование *Машинное обучение *Искусственный интеллект Natural Language Processing *

Думаю, многие знают изобретение Codex от OpenAI. Это мощная нейронная сеть, которая может делать любые операции с программным кодом. Она бесплатна, но доступна ограниченному кругу лиц.

Мне удалось получить доступ к сие чуду. Я, как любитель всего открытого, решил косвенно дать людям доступ к Codex, поэтому я разработал сервис - CodeTools. С помощью него можно перевести код с одного языка на другой, упростить код, задокументировать код, дополнить код и многое другое...

Читать далее
Рейтинг 0
Просмотры 123
Комментарии 0

Как мы научили AI писать тексты для бизнеса не хуже, чем копирайтеры

Блог компании Сбер Алгоритмы *Машинное обучение *Искусственный интеллект

Привет, Хабр! Я Алексей, data scientist в Сбере, отвечаю за AI создание персонализированного маркетингового контента для разных каналов коммуникаций.

Как и другие подразделения Сбера, мы в трайбе «Массовая персонализация» создаём много текстового контента. Это тексты для СМС, пуш-уведомлений, e-mail, рекламные баннеры и прочее для СберБанка. (Да-да, это мы шлём вам эсэмэски!)

Мы хотели сделать этот процесс эффективнее — как по продажам, так и по затратам на производство контента. После того как SberDevices выкатили ruGPT-3, мы решили обобщить накопленные за несколько лет данные и доверить AI написание текстов для наших клиентов.

Получилось ли это? Спойлер: да, ещё как. Но обо всём по порядку.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 147
Комментарии 2

История о том, как из проблемы у нас получилось хобби, профессия и заработок

Управление проектами *Развитие стартапа Управление продуктом *Читальный зал

Расскажу, как мы с одногруппником бросили работу в сфере IT и финансов и через год стали зарабатывать вдвое больше, работая на себя. Сначала напишу первую часть — о том, как мы бросали работу. А дальше посмотрим.

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

Делаем радио из Cyberpunk 2077

Блог компании Selectel *nix *DIY или Сделай сам

Я не ждал Cyberpunk 2077 десять лет, я даже не смотрел презентации на Е3 и трейлеров, а переносы меня не огорчали — мой компьютер все равно не удовлетворял системным требованиям. Так уж произошло, что через два месяца после релиза я обновил компьютер, а друг подарил мне цифровую копию игры.

С первых часов я проникся миром игры, противоречивым и жестоким, но по-своему красивым и привлекательным. Я наиграл уже более двух сотен часов, разведал, кажется, каждый уголок, пока выход сюжетных DLC задерживается. Значит, есть время «перенести» технику из игры в реальную жизнь. Я давно хотел сделать интернет-радио…
Читать дальше →
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 500
Комментарии 2

Одна слабая транзакция в ECDSA в блокчейне Биткоина и с помощью Lattice Attack мы получили Private Key к монетам BTC

Python *GitHub Growth Hacking *CTF *Matlab *
Из песочницы

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

ECDSA — это особая форма алгоритма цифровой подписи (DSA). DSA — это довольно распространенная схема цифровой подписи , которая определяется тремя алгоритмами: генерация ключа, подпись и проверка. Алгоритм генерации ключей генерирует закрытый и открытый ключи; закрытый ключ отвечает за создание подписей; а открытый ключ отвечает за проверку подписей. Алгоритм подписи принимает в качестве входных данных сообщение и закрытый ключ и создает подпись. Алгоритм проверки принимает в качестве входных данных сообщение, подпись и открытый ключ и возвращает значение true или false, указывая, является ли подпись действительной.

DSA определяется для любой математической группы, и эта схема безопасна до тех пор, пока проблема дискретного логарифмирования сложна для этой группы. Обычно используемая группа представляет собой целые числа по модулю простого числа p . Наряду с этой группой у нас будет генератор группы g и некоторая криптографически безопасная хэш - функция H. Мы можем предположить, что p , g и H будут общеизвестны.

Генерация ключей работает, сначала случайным образом выбирая значение x из целых чисел по модулю p . Затем вычисляется значение y = g x mod p . Закрытый ключ подписи имеет значение x , а открытый ключ — y . Ключ подписи должен храниться в секрете, поскольку именно он позволяет делать подписи.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 438
Комментарии 0

Нирвана и нейробиология: как создать потребительскую ценность

Разработка игр *Развитие стартапа Управление продажами *Брендинг Мозг

ПМЭФ пестрит заявлениями о возможностях для бизнеса. Только ленивый не вспомнил набивший оскомину стереотип о возможностях в эпоху перемен. Чем обернется освоение этих самых возможностей? Только бы не тоннами однотипных товаров, состряпанных на скорую руку с одной только целью — занять пустое место на полке. В общем, не хочется на те же самые грабли.

Под граблями я имею в виду материалистический подход к потребительскому спросу. Как у нас принято считать? В ситуации дефицита, главное это продукт, его технические характеристики и свойства. А всякие там UI и UX, клиентский опыт опять же, все от лукавого. Вот это вот залихватское «ну, а че там такого, создайте русский айфон»…Ну создайте, че там такого?

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

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

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

Читать далее
Всего голосов 2: ↑0 и ↓2 -2
Просмотры 223
Комментарии 0

Выход из ада зависимостей: взгляд iOS-разработчика

Блог компании Surf Программирование *Разработка под iOS *Разработка мобильных приложений *

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

Понимание общих принципов поможет не только iOS-разработчикам: у всех менеджеров зависимостей проглядывается общая схема фиксации версий, и требования к распространяемым утилитам во многом похожи.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 302
Комментарии 0

CANON 7 LTM. Дальномерный флагман от CANON, родом из 60-х

Блог компании RUVDS.com Фототехника Читальный зал
Разбираясь в шкафу, осознал что те плёночные фотоаппараты, которые оказались у меня, образуют маленькую, я бы даже сказал, малюсенькую, но уже коллекцию.



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

Начать я хотел бы с фотоаппарата, который попал ко мне последним(на момент начала написания сего опуса, который затянулся на полгода) — это флагманская дальномерка от Canon родом из 1960-х — Canon 7.
Читать дальше
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 604
Комментарии 0

Метод CI/CD: чистый код и строгая дисциплина

Блог компании Автомакон Управление разработкой *
Recovery mode

Оперативная подготовка программного продукта к релизу — ключевое конкурентное преимущество во многих отраслях бизнеса. Кто сможет быстро предоставить качественный продукт займет лидирующие позиции. Поэтому в основе тестирований современных компаний, которые растут и гибко реагируют на любые изменения, лежит методология непрерывной интеграции и доставки (CI/CD). Их IT-команды используют Agile-подход при разработке программного обеспечения, а CI/CD — одна из подобных практик, но именно по части DevOps. Она позволяет проводить различные тесты на каждом этапе (интеграция) и завершать их запуском с развертыванием закомиченного кода в фактический продукт, который уже могут увидеть конечные пользователи (доставка). Основные возможности, которые появляются при использовании этой концепции — отследить ошибки и оперативно их устранить, а также написать качественный и чистый код. 

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Просмотры 588
Комментарии 0

Как мы снимали второй сезон ITить-колотить

Блог компании Cloud4Y Читальный зал Облачные сервисы IT-компании

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

В 2021 году Cloud4Y решил повторить этот опыт. Делимся историей о том, как мы создавали второй сезон.

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

Модуль vs Компонент

Программирование *Анализ и проектирование систем *Проектирование и рефакторинг *Управление проектами *
Recovery mode

Чем модуль отличается от компонента. Чем схема модулей отличается от схемы компонентов.


Три компонента описания системы
Рис. 1. Три проекции описания системы по стандарту ISO 81346-1


Очень часто сталкиваюсь с тем, что даже опытные инженеры, да и не только они путают эти понятия. Хотя есть четкие стандарты (например ISO 81346) которые определяют их. Если вы будете гуглить, то зачастую схема компонентов может называться схема модулей, а схема модулей — схемой компонентов. Так в чем же разница, и как их отличить?

Читать дальше →
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 538
Комментарии 3

Виртуальный COM-порт на STM32 или как управлять контроллером через USB не привлекая внимания санитаров

Системное программирование *Реверс-инжиниринг *Программирование микроконтроллеров *
Из песочницы

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

как же оно всё-таки работает
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 891
Комментарии 0

Разнообразный арсенал социальной инженерии: виды атак и способы их предотвращения

Блог компании FirstVDS Информационная безопасность *

Слышали ли вы про такие виды информационных атак, как Baiting, Honey Trap, Scareware, Water Holing, Quid pro Quo? В этой статье рассмотрим их и ряд других, в том числе различные виды фишинга, а также приведём громкие примеры атак и расскажем про эффективные способы защиты от них.

Читать далее
Всего голосов 2: ↑0 и ↓2 -2
Просмотры 627
Комментарии 0

Инспекция кода: заводим врагов

Блог компании Productivity Inside Программирование *Совершенный код *
Перевод
Бывает такое, что коллеги на работе вас раздражают и вызывают чувство, что надо бы как-то с ними расквитаться, отплатить за все те воображаемые обиды, которые они вам нанесли. Многим не представляется такой возможности. Однако если вы с ними – разработчики, то всегда есть верный способ. И этот способ – инспекция кода.

Когда всё делается правильно, инспекция кода – отличный инструмент для улучшения качества кода и распространения базовых знаний внутри команды. Но если делать всё неправильно, она может отравить человеку существование. Так что это отличный полигон для отмщения через пассивную агрессию. У коллеги всё слишком хорошо получается? Или он вечно выливает себе остатки кофе, а новый не заваривает? Или как-то раз три гола назад не поздоровался с вами, потому что не заметил, что вы в офисе? Пришло время отплатить за всё сполна при помощи инспекции кода!
Читать дальше →
Всего голосов 6: ↑4 и ↓2 +2
Просмотры 707
Комментарии 2