Тактика на Топкодере

Я, пожалуй, не соглашусь с теми, кто скажет, что для того, чтобы круто выступать на топкодере надо-просто-хорошо-решать-задачи. Есть ли у вас своя тактика. Может, какие-нибудь особые тренировки.
Если не секрет, поделитесь)
27 комментариев
avatar
Быть может, это не показатель, но лучших результатов я добивался, когда не смотрел по тем или иным причинам Division Summary.

BTW, стоит уточнять, о каком виде соревнований говорится. А то ведь кроме Algorithm Competitions есть еще Marathon и Component. Да и Studio...
avatar
Ну я решаю обычно: попорядку ... и смотрю див саммори ... Но обязательно после каждого контеста (необязательно сразу), читаю решения других участников... прошедшие (для идей и быстрой реализации) и непрошедшие (чтобы попробовать почеленжить "в уме").
avatar
Читаете ли вы полностью условие задачи? Просто иногда бывает так что и по тестам можно догадаться. Лично я пока не рискую и всегда читаю условия, даже достаточно длинное
avatar
Если длина меньше 8 предложений (в среднем, колеблется в зависимости от их длины), то целиком и сначала. Если больше - то с конца, используя метод "ленивых вычислений" =)
avatar
Одна из тактик - пропускать задачи с завышенными баллами, потому что 300 часто оказывается сложнее 500, а 600 - сложнее 1000.
avatar
Последний SRM, однако, показал ровно обратное... Но все равно идея интересная.
avatar
А по мне в последнем SRM (394) задача 900 была проще 600. Над 600 я долго думал и в итоге реализовал неверный алгоритм. А в 900 решение было очевидно.
avatar
2rem да что верно, то верно. Я всегда перед тем, как открыть задачи смотрю разбаловку.
avatar
Ко мнению насчет 900 и 600 бальных задач +1
avatar
900 в половине случаев на теорию вероятностей. И далеко не всегда проще чем вторая.
Вот 1100 я по-моему никогда не сдавал :)

А так тактика никакая не нужна - по порядку открываешь, читаешь, сдаешь. Главное уметь быстро и стабильно решать простые задачи, имея каждый раз только хорошие баллы по 250 и 500 можно очень хорошо подниматься в рейтинге.
avatar
А какие шаблоны или уже написанные функции кто использует?

У меня забиты только инклюды и дефайны, на рабочем столе лежит файлик с маленькими полезными функциями, но за полгода пользовался ими только раз.
avatar
ну нафиг эти функции в шаблоне! два СРМа назад мог быть желтым....а потом админ обнаружил неиспользуемый код и дали тока 20% от задачи :( и хорошо слетел.... тока инклюды и дефайны!
avatar
у меня куча дефайнов на циклы и стандартные типа pb, mp и all в шаблоне, дефайны никогда не учитываются как неиспользуемый код
и в текстовичках лежат минкост, СЛУ, перемножение матриц (:)), фурье и куча всего еще :оО
avatar
К сожалению, дефайны - это избыточный код и за него штрафуют.
Поэтому я модифицировал moj чтобы вырезать лишние дефайны.
avatar
Я почти уверен, что у меня в любой 250 дефайны занимают 70% кода :оО Но меня никогда не штрафовали.
avatar
2 Александр Скиданов
Объем лишнего кода должен быть не более max(300, 30% размера кода). Твои дефайны в последнем 250 занимают 240 символов, так что все нормально :)
Вот у меня недавно действительно было превышение ECR на несколько десятков символов. К счастью, админы либо не заметили, либо простили :)
avatar
По поводу текстовых файлов с классическими алгоритмами, да и шаблонов вообще:
Если бы это было на ACM, я бы сразу сказал, что мое отношение резко отрицательное. С одной стороны, нарушается дух честной борьбы, с другой - еще и наносишь вред самому себе, так как на онсайт-раундах комп ваш только с начала контеста.
Но! Мы тут все же обсуждаем TopCoder, и интересно, на TCO можно или нет как-то настраивать комп до тура, закачивать туда все, что надо, а также можно ли юзать инет или принесенную инфу уже во время тура? Если да, то шаблоны однозначно рулят. Если нет - опять же, можно привыкнуть к роскоши и, как следствие, неадекватно оценивать сложность задач (и я уж не говорю о том, что как пишется какой-нибудь сложный для твоего уровня алгоритм, можно даже тупо забыть).
avatar
2 Кирилл Василевский:

Лично мне онсайт не грозит, поэтому я не особо боюсь "привыкнуть к роскоши" :)

А что касается навыков для real-world программирования, то умение пользоваться кодом (пусть даже чужим) не менее (а скорее всего даже гораздо более) важно, чем умение этот код создать.
avatar
На онсайте у тебя есть пол часа до тура, когда ты можешь делать на изолированном компьютере что угодно.
В любом случае, если ты крут, ты все равно не привыкнешь к роскоши.
avatar
на ТЦЦЦ2007:
1) приносить инфу нельзя
2) инета нет
3) где-то за 10-15 минут до старта ты содишься за "голый" комп. но все что ты за это время навояешь можешь потом юзать.

Т.е. если ты свой шаблон зафигачишь за 10 минут то и на онсайте сможешь его юзать.
avatar
Еще вопрос в ту же тему, об онсайт-раунде. На компе какой софт стоит кроме Арены? Стоят ли на нем плагины к Арене?
avatar
По впечатлениям от TCHS'07 и TCO'08:
- Windows
- Java
- какой-то текстовый редактор поприятней notepad-а
- доступны плагины, которые не позволяют локального тестирования (например, PopsEdit)
- заведомо нет компиляторов
avatar
PopsEdit же умеет javовские прожки тестить или я что-то пропустил?
avatar
Вероятно, ты путаешь PopsEdit и PopsPack. Впрочем не знаю, вторым не пользовался.
avatar
На компьютере можно найти Notepad++ - это то, о чем говорил бурундук :о)
Из плагинов - KawigiEdit (так как компиляторов нет, он просто украшалка - потестить в нем ничего нельзя), PopsEdit, FileEdit
Я лично использовал PopsEdit

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.