Різне

28 Сайтів, на яких можна вирішити завдання з програмування

21.02.2017

28 сайтів, на яких можна вирішити завдання з програмування

Не секрет, що найкращий спосіб підвищити свої навички в програмуванні — це практикуватися і тільки практикуватися. Ми підготували для вас величезну добірку сайтів з завданнями по програмуванню на самі різні теми.

28 Сайтів, на яких можна вирішити завдання з програмування

Codeforces — безсумнівно найбільш популярна і відома платформа у всьому світі для проведення змагань на алгоритміки. Крім великих контестів сайт часто проводить свої «раунди» — учасникам даються 5 завдань на дві години. Є система рейтингу, на основі якої учасники діляться на два дивізіони. Таким чином, профі не змагаються з новачками безпосередньо. Всі завдання можна здати і перевірити навіть після змагань. Крім «раундів» і «тренування» — завдання з минулих змагань публікуються у режимі дорішування.

28 Сайтів, на яких можна вирішити завдання з програмування

TopCoder — ненабагато відстає за популярністю від Codeforces американська платформа. Примітна тим, що крім алгоритмічних контестів, які описувалися раніше, на ній проводяться і змагання з промислового програмування і марафони — змагання з завданнями на дослідження, для яких немає єдиного вірного алгоритму, а є лише відповідь, відповідний більше або менше. На вирішення таких завдань учасникам зазвичай дається один або два тижні.

28 Сайтів, на яких можна вирішити завдання з програмування

Timus Online Judge — російськомовна (хоча англійська мова також підтримується) платформа, на якій більше тисячі завдань вдало відсортовані за темами і за складністю. Також тут регулярно проводяться контести уральського регіону, які, втім, не представляють для вас нічого цікавого, якщо тільки ви не студент УрФУ або іншого довколишнього вузу ??

28 Сайтів, на яких можна вирішити завдання з програмування

SPOJ — великий англомовний сайт з більш ніж 20000 завданнями на абсолютно різні теми: динамічне програмування, графи, структури даних і т. д. Зрідка проводить контести, які не представляють інтересу, якщо ви не живете в країнах їх проведення.

28 Сайтів, на яких можна вирішити завдання з програмування

informatics.mccme.ru — платформа з безліччю теоретичних матеріалів і завдань за відповідними темами. Все дуже зручно зібрано по категоріях і темами. Також містить велику базу завдань з минулих олімпіад школярів.

28 Сайтів, на яких можна вирішити завдання з програмування

CodeChef — менш великий аналог Codeforces і TopCoder, теж з величезним архівом завдань і регулярними контестами.

28 Сайтів, на яких можна вирішити завдання з програмування

acmp.ru — сайт, який буде корисний всім завдяки своєму архіву завдань, що зручно (і здебільшого правильно) отсортированному по складності і темами. Змагання проводяться, але брати участь у них має сенс тільки школярам Красноярського краю, для яких ця платформа спочатку призначалася.

28 Сайтів, на яких можна вирішити завдання з програмування

Project Euler — збірник 500 завдань, які неможливо вирішити без знань математичних і геометричних алгоритмів. Іноді використовується на співбесідах для прийому на роботу, щоб краще з’ясувати алгоритмічну підготовку претендента.

28 Сайтів, на яких можна вирішити завдання з програмування

Kaggle — дана платформа відрізняється від описаних раніше тим, що тут не проводиться алгоритмічних змагань — тільки завдання на дослідження (як у марафонах на вищенаведеному TopCoder). Наприклад, одна з задач, на якій зараз там перевіряють свої вміння учасники, полягає в розпізнанні написаних вручну цифр. Ось кілька символів, для яких це не так просто, як здається (прим. авт. — деякі з них я не зміг розпізнати навіть не програмно):

28 Сайтів, на яких можна вирішити завдання з програмування

CodinGame — сайт, на якому програмування та відеоігри зливаються в єдине ціле. Тут ви знайдете велику колекцію задач на програмування, оформлених у вигляді відеоігор. Також тут зрідка (раз у два місяці) проводяться контести, що містять у собі завдання на оптимізацію і ШІ, переможці яких отримують цінні призи. А якщо ви вирішите багато завдань, то на вас можуть звернути увагу компанії, які набирають на цьому сайті працівників!

28 Сайтів, на яких можна вирішити завдання з програмування

CodeCombat буде більше корисний для новачків. Ця платформа наочно демонструє, що навчання програмуванню — це не так складно і нудно, як може здатися. На сайті представлений у вигляді гри, яка розділена на кілька частин, зростаючих за складністю. У кожній частині міститься безліч завдань на ті чи інші теми, покликані навчити програмуванню з нуля будь-якої людини. Якщо ви давно мріяли зайнятися програмуванням, але ніяк не знаходили в собі, обов’язково зверніть увагу на цей сайт.

28 Сайтів, на яких можна вирішити завдання з програмування

HackerRank навпаки буде більше цікавий професіоналам, які вже багато чого вміють. На цьому сайті зібрано безліч завдань на різні розділи Computer Science: традиційна алгоритмика, ІІ, машинне навчання і т. д. Якщо ви вирішите багато завдань, то вами можуть зацікавитися роботодавці, регуляторно які моніторять цю платформу.

28 Сайтів, на яких можна вирішити завдання з програмування

C Puzzles — добірка головоломок, специфічний для мови С, з усіма її примхами. Наприклад, дано код, який, за логікою, не повинен працювати, але, тим не менш, він компілюється і навіть правильно виконує свою задачу. Треба зрозуміти, чому так? На цьому сайті ви зможете придбати навик налагодження програм та читання коду інших.

28 Сайтів, на яких можна вирішити завдання з програмування

Codewars — збірник завдань на різні теми, від алгоритмів до шаблонів проектування.

LeetCode — сайт з завданнями для підготовки до співбесід.

28 Сайтів, на яких можна вирішити завдання з програмування

Programming Praxis — блозі, що включає в себе багато цікавих завдань.

PythonChallange — сайт з загадками, зростаючими по складності. Для їх вирішення необхідно написати програму на Python.

28 Сайтів, на яких можна вирішити завдання з програмування

Al Zimmermann’s Programming Contests — платформа, на якій раз у півроку проводяться контести із завданнями на дослідження та оптимізацію. Цікавий тим, що писати програму необов’язково — даються тестові дані. Відповіді можна розраховувати вручну, або просто гадати їх на кавовій гущі.

Ruby Quiz — добірка завдань для програмістів на Ruby, але рішення можна писати і на інших мовах.

Prolog Problems — аналогічно з Ruby Quiz. Добірка завдань для програмістів, що використовують Prolog.

28 Сайтів, на яких можна вирішити завдання з програмування

MindCipher — збірник цікавих математичних і логічних задач (в тому числі і з програмування).

Збірник завдань для практики від СppStudio. Рекомендується вирішувати на С++, але можна й на інших мовах.

28 Сайтів, на яких можна вирішити завдання з програмування

CheckIO — сайт з завданнями для програмістів всіх рівнів, оформлений у вигляді гри.

28 Сайтів, на яких можна вирішити завдання з програмування

E-olimp — українська тестуюча система з великим архівом завдань.

28 Сайтів, на яких можна вирішити завдання з програмування

Empire of Code — сайт для програмістів, де необхідно писати код, який реалізує стратегію і тактику віртуальних бійців.

28 Сайтів, на яких можна вирішити завдання з програмування

Operation Go — практика написання коду на Go в ігровій формі.

28 Сайтів, на яких можна вирішити завдання з програмування

Russian AI Cup — щорічний контест від mail.ru по розробці ІІ. Брати участь можуть всі — від школярів до професіоналів. Переможцям та призерам так само покладаються круті призи. Обов’язково прийміть участь, якщо ви зацікавлені цією темою.

28 Сайтів, на яких можна вирішити завдання з програмування

Завдання Типового Програміста — так, на нашому сайті теж є завдання з собеседованний, причому на різні теми: від логічних і математичних до алгоритмічних. У цю добірку включені кращі з них (вона регулярно оновлюється).

Локальні сайти вузів

Наступний сайти не представляють для вас інтересу, якщо ви не знаходитесь в тій же області, що і зазначений внз.

Короткий опис статті: cyberforum.ru

Джерело: 28 сайтів, на яких можна вирішити завдання з програмування

Також ви можете прочитати