Подскажите что учить , какие темы , где материал брать , На каких сайтах итп :)
№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 3993 |
2 | jiangly | 3743 |
3 | orzdevinwang | 3707 |
4 | Radewoosh | 3627 |
5 | jqdai0815 | 3620 |
6 | Benq | 3564 |
7 | Kevin114514 | 3443 |
8 | ksun48 | 3434 |
9 | Rewinding | 3397 |
10 | Um_nik | 3396 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 155 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
10 | nor | 152 |
Подскажите что учить , какие темы , где материал брать , На каких сайтах итп :)
Название |
---|
Основная идея подготовки к олимпиаде — прорешивать как можно больше задач, для того чтобы к олимпиаде "набрать оптимальную форму". По поводу тем для обучения — все зависит от уровня олимпиады.
Имхо, лучшие сайты (для меня по крайней мере) для прорешивания задач -
http://acmp.ru/ http://informatics.mccme.ru/ http://www.e-olimp.com/ ну и конечно же сам кодефорсес
Теорию для них можно брать с разных источников, начиная от разных видеоуроков до того же e-maxx'a например (http://e-maxx.ru/)
Этого хватит для ученических олимпиад, как по мне. Не стоит также забывать и про чтение различных книг как по алгоритмам так и по языку
Абсолютно с вами согласен. Также, не стоит забывать про помощь более опытных коллег. Например онлайн-курсы Фёдора Меньшикова http://codeforces.me/blog/entry/17187 или стримы http://www.twitch.tv/lebron_stream , http://www.twitch.tv/enot110 . Так, вы сможете не только смотреть подробный обзор сложных задач, а и получать ответы на интересующие вас вопросы.
Прочитал как "Подскажите что учить, какие мемы" :) А если серьезно, то учить нужно для начала простенькое, а потом это закреплять. Из важных алгоритмов я бы отметил: стек, очередь, куча, сортировки (за квадрат: вставками, сортировка выбором, ну и оптимальные), префиксные суммы, дерево отрезков (можно без фенвика, т.к. дерево отрезков универсально), разряженную таблицу. Конечно еще желательно знать что-нибудь для графов, но это уже отдельная история. Задачки решать лучше 2 типов:
Первые научат тебя писать (и не путаться в переменных), а вторые научат придумывать идеи, методы решения задач. Для начала этого будет достаточно.
PS. codeforces.com, acmp.ru, e-olimp.com — хорошие сборники задач, а алгоритмы можно подсмотреть здесь: e-maxx.ru
Я бы не стал человеку с одной решенной задачей за три контеста засорять мозги всякими деревьями отрезков и разреженными таблицами :)
Тут, мне кажется, совет только один — практика на задачах своего уровня. Самый банальный (и действенный, как мне видится) вариант — это не разрываться между множеством сайтов, а прорешивать задачи не отходя от кф. Есть проблемы с задачей А див2 — прорешивай А див2. не получается решить — читаешь разбор, разбор не помог — читаешь чужие исходники. Теорию специально можно не учить. А вот как только столкнулся с задачей, которая не решается без нужного алгоритма, можно про него и почитать. При таком подходе не будет в голове бессмысленных и ненужных знаний алгоритмов, которых никогда не удастся применить :)
А еще есть очень классное место, которое лишает тебя необходимости самостоятельно выбирать себе задачи для тренировок.