Я в восторге от topcoder.com, там так всё удобно. Подготовлены тестовые входные значения для каждой задачи с возможностью автоматического тестирования. Описание каждой задачи дано с примерами.
Пока только практикуюсь.
Вопрос: Кто участвовал в соревнованиях? Сколько свободного времени требуется, чтобы участвовать в SRM (время ожидания задания, время данное по регламенту на конкретную задачу и т.д.)? То есть нужно ли быть полностью свободным, чтобы участвовать в соревнованиях.
Я участвую.
SRM - быстрое соревнование. 1:15 кодирование, 5 минут перерыв, 15 минут поиск ошибок у других - за это тоже даются очки. Регистрация открывается за 3 часа до начала и закрывается за 5 минут. Иногда есть ограничения на количество участников, так что лучше регистририваться заранее. Обычно 2-х часов хватает на всё.
Даётся 3 задачи - лёгкая, средняя и сложная (иногда условно). Обычно у них базовая стоимость 250, 500 и 1000 очков.
Чем быстрее решите каждую задачу, тем больше за неё получите очков, при условии, что она на все тесты даст правильный результат. Время отсчитывается от момента, когда вы её первый раз откроете и до момента последнего сабмита (submit). Сабмитить можно несколько раз (исправление ошибок), но за каждый раз кроме первого снимают ещё 10% базовой стоимости задачи, но независимо от этого вы получите минимум 30% базовой стоимости за правильное решение.
В челлендж фазе (challenge) вы можете смотреть решения других участников в вашей комнате (<=20 человек) и пытаться выявить ошибки. Вы выбираете аргументы удовлетворяющие заданию, при которых, по вашему мнению, программа даст неправильный результат и челленджите её. Если вы оказались правы - вам +50 очков, и ошибочное решение снимается. Если же результат оказался правильным - вам -25 очков.
После всех тестирований ваше место в финальном списке определяет как изменится ваш рейтинг. Начальный рейтинг - 1200.
Я ещё участвую в марафонах - это соревнование на 1-2 недели, где нет идеального решения, и решения участников оцениваются по каким-нибудь критериям.