В этом репозитории размещены задачи для мини хакатонов для русскоязычного сообщества.
Здесь предполагается собрать небольшие задачки, которые помогут переключиться с решения ежедневных задач на задачи, решение которых имеет скорее академичский интерес.
В перспективе это должно быть полезно для расширения общего кругозора и инструментов решения ежедневных задач.
Предполагается, что все задачи должно быть возможно решить на любом популярном языке программирования в рамках одного часа.
Задачи не должны быть слишком сложны. Решение задач не должно занимать слишком много времени.
- Приветствие и обсуждение общих правил. 5-10 мин
- Оглашение задачи и базовые вопросы на ее тему. 5-10 мин
- Индивидуальный или групповой брейншторминг. Первая попытка решения. 20 мин.
- Промежуточное обсуждение результатов и возникших трудностей. 10 мин.
- Завершение задачи и обсуждение решений. 20 мин.
- Не использовать никаких фреймворков или библиотек высокого уровня (
JQuery
- нельзя). - Стараться использовать только инструменты входящие в базовый набор библиотек языка (
require('fs')
- можно)
- Решение должно быть оформлено в виде отдельного файла.
- В файле должно быть оформлено 2-е функции
expected_result
иexecution_time
. - Первая функция
expected_result
должна принимать аргументыa
иb
и выводитьExpected result: true
- еслиa
иb
равны. - Вторая функция
execution_time
должна принимать функцию с параметрами и выводитьExecution time: X ms
- где X время выполнения функции. - В шапке файла должен присутствовать комментарий с объяснением того, как запустить программу.
Файл с решением должен содержать:
- Комментарий с именем автора
- Основную функцию для решения задачи
- Минимальный, но достаточный набор тест-кейсов с применением функции
expected_result
- Содержать функцию
execution_time
, которая демонстрирует затраченное время исполнения хотя бы на одном из базовых кейсов.
- Файл с решением назвать именем автора
ivan-ivanov.js
- Положить в каталог с соответствующей датой (12-01-2012)
- Сохранить в GIT с именем коммита "Ivan Ivanov. 12/01/2021"
- Отправить PR в репозиторий с именем "Ivan Ivanov. 12/01/2021"