Динамическое программирование
Представьте, что вы стоите у подножия высокой лестницы и хотите узнать, сколькими способами можно подняться на сотую ступеньку, если за один шаг можно преодолеть либо одну, либо две ступени. Можно ли сразу дать ответ? Конечно, нет — задача кажется необъятной. Но что, если начать с малого: сначала посчитать способы для первой ступеньки, потом для второй, третьей… и так постепенно добраться до сотой? Именно в этом и заключается суть динамического программирования. В задании 23 ЕГЭ по информатике проверяется умение анализировать работу алгоритма с ветвлениями и циклами...
Сайты, на которых можно порешать задачи
Codeforces — самая популярная платформа в мире для проведения соревнований на алгоритмику. На основе системы рейтинга участники делятся на два дивизиона. Таким образом, профи не соревнуются с новичками напрямую. Кроме «раундов» доступны и «тренировки». TopCoder — кроме алгоритмических контестов проводятся и соревнования по промышленному программированию и марафоны. На решение таких задач участникам обычно дается одна или две недели. Timus Online Judge — более тысячи задач отсортированы по темам и по сложности...
11 месяцев назад
Разработка аналога CodeForces: опыт создания платформы для решения задач по программированию
Вдохновившись популярной платформой CodeForces, мы решили разработать веб-сайт, который позволит пользователям размещать и решать задачи по программированию. Основной целью было создать удобную и интуитивно понятную платформу, поддерживающую удобный ввод математических формул, систему достижений и авторизацию пользователей. В статье расскажем о процессе разработки, выборе технологий и особенностях реализации. Для быстрого и эффективного создания проекта мы выбрали следующий стек технологий: Этот стек позволил нам реализовать проект в короткие сроки без потери качества...