Мой FAQ по школьным олимпиадам

Костя kik0s Амеличев · June 8, 2026

Меня слишком часто спрашивают про то, как правильно ботать олимпиадную информатику – и несмотря на то, что мне нравится концепция того, чтобы каждому человеку ответить таргетно на его вопрос, за последние много лет это порядком наскучило. Я решил наконец-то сделать публичный пост, чтобы перестать про это разговаривать.

Раньше я в основном тусовался с A’ (экс-Тшном) и мое мнение, соответственно, было скошено в сторону старших параллелей, где далеко не все справляются взять олимпиады. Их основные точки роста – стратегические: набор баллов, стресс-тесты, психологическая подготовка к туру. И соответствующие тренировки: в первую очередь, реальные олимпиадные задачи и дистуры. Вся теоретическая база и навыки у этих ребят уже в избытке, им не о чем лекции читать.

В этом году я преподавал в B’ (ныне-Яшном) после большого перерыва, и это был совершенно другой опыт. Это параллель, которая слушает базовые темы с самого начала, некоторые люди буквально с нуля. За полгода мы рассказываем практически всю базу, а за учебный год закрываем вообще всю маст-хев теорию для школьных олимпиад.

И, в отличие от A’, в B’ у людей фокус на будущее. Если A’ думает в основном о том, как взять всерос прямо сейчас, то B’ думает о том, как сейчас заложить базу на следующий сезон. Ну, точнее, им следовало бы думать. Много кто в 10м или 11м классе, и у них не так много времени на олимпиады, а знаний на старте практически нет.

В общем, я нагляделся и на тех, и на этих. Много общался в чате и личках, много отвечал всяким рандомным ребятам, которые ко мне приходили, и наконец-то отполировал для себя ответ на the Frequently Asked Question “как ботать”: от beginner до advanced уровней стратегии, очевидно, разные. Единственное, что будет постоянно – необходимость решать задачи. Поэтому, собственно, TLDR (всегда был) такой: Решай задачи.

Развернуто – ниже.

Примечание: Это мое личное мнение, пусть и полученное путем наблюдения за кучей людей. Если вы не согласны с моим теориями – я не расстроюсь, можете в комментариях поспорить.

Для самых начинающих

Спортивное программирование – достаточно закрытая активность с высоким порогом входа. Конечно, существуют муниципальные и школьные этапы всероса, в которых участие очень массовое, но я видел невероятно большое количество ребят из своей школы, которые писали школьный этап и вообще не понимали, что произошло. Концепция тестирования кода непонятна, концепция закрытых тестов непонятна. Тот факт, что не надо в консоль писать “введите n” людей путает. Ограничения по времени. Ограничения по памяти. Undefined behavior у каждого первого. Компиляторы у всех разные. А помните system("pause")? Ну и далее по списку.

Мое первое участие на – это див2 раунд с отбора на технокубок, где у меня упала А по тайм лимиту (потому что я написал решение за O(n) на ограничениях $10^9$), была сдана C (потому что там интерактивка была, где асимптотика не была важна), и в претесты зашла самая сложная F с асимптотикой $O(n^2)$ на $10^5$, а потом упала на систестах.

Если этот лонгрид читает кто-то, кто действительно еще мало что знает об олимпиадах, то было буквально следующее: мне тестирующая система сказала про две задачи из трех, что я их решил, а через два часа после олимпиады сказала, что я их запорол, и мой код там слишком медленный. Я тогда сделал единственный разумный вывод – что это просто Java, на которой я программировал, медленная. Такое вот поверие ходило, что ей не пользуются, потому что она медленная. Писал бы на C++ – все бы зашло. На самом деле я и систему не совсем правильно понял, и не смог оценить, насколько мое решение оптимальное.

Задолго до этого я один раз сходил на Высшую Пробу, что ли – не помню точно, какую-то не самую хайповую по тем временам олимпиаду. Я сам тогда где-то в восьмом классе был, олимпиадами не занимался, так что она была скорее развлекательной. Ну и там надо было в задачах ввод-вывод из файлов сделать. На доске написали команду, как это сделать в C++, а я C++ не знал, а в паскале тоже так не умел. Я не разобрался, как считывать из файла, и ушел с нулем баллов и ощущением несправедливости, потому что в первой задаче я как будто бы даже разобрался.

Короче, начинать обучение нужно с того, чтобы вообще понять формат (и смириться с мыслью, что будешь писать на C++). Нынче, кажется, для этого хватит час побеседовать с ИИ, обсуждая какую-нибудь самую простую задачу школьного/муниципального этапа.

Параллельная вещь, с которой нужно разобраться – это своя мотивация. Надо посмотреть, насколько олимпиадное программирование ощущается прикольно, и насколько хочется этим заниматься. Обычно вопрос мотивации не поднимается вообще, потому что олимпиады воспринимаются как способ поступить, да и альтернативных кодерских занятий не очень много – в основном “промышленное программирование”, которое и термин непонятный, и нормального трека обучения для школьников я не видел. Ну то есть ты занимаешься олимпиадами, потому что по большому счету это единственная вещь с очевидным и полезным выхлопом, которой можно заниматься в школе, если ты информат.

Но вообще-то до тех пор, пока ты не выучил свой первый алгоритм, а только проходишь курс по C++ на степике и сдаешь задачи про шахматные фигуры, легче всего представить себе, что вот в таком уровне непонятности надо будет работать еще 500-1000 часов до момента, пока не начнет нормально получаться хоть что-то. Изучение C++ вообще прекрасный стартовый маркер – это сравнительно простой первый кирпичек пути, при этом в правильном количестве фрустрирующий. Ну и соответственно, после него можно слиться и переквалифицироваться на условный ЕГЭ, если олимпиады не зацепят. Это все равно не зря полученный навык, в отличие от декартова дерева по неявному ключу.

О чем не стоит беспокоиться:

  • О вашем текущем языке программирования – во-первых, начать решать задачи можно на любом языке; во-вторых, практически наверняка переучивание с одного языка на другой для школьника это буквально десяток-другой синтаксических правил. Это потребует несколько недель на переход, но концепции не меняются, а выигрыш от того, чтобы говорить со всеми в комьюнити на одном языке, гигантский.
  • Об изучении настоящих олимпиадных алгоритмов – большинство базовых задач требуют скорее навыки программирования и какую-то логику.
  • О полных провалах на первых олимпиадах – наоборот, нужно идти на первые олимпиады как можно раньше, и как можно быстрее справляться с тем, чтобы решить свою первую задачу.
  • О любой дичи, хаках и микро-оптимизациях, от которых веет байками и магическим мышлением. Даже среди опытных олимпиадников полно ребят, которые абсолютную чушь несут, а чем дальше от олимпиадного пузыря, тем хуже. На вашем уровне единственный хак, который стоит включить раз и навсегда это .

Золотое правило начинающего: если не знаешь, что делать – пройди бесплатный курс по C++ на степике от Михаила Густокашина. Дальше станет понятнее, куда дальше. Скорее всего – решать любые задачи олимпиадного формата и искать себе преподавателей.

Образовательная инфраструктура

Основной вопрос, который неявно отвечается на новичковой стадии – это “получится ли у тебя потратить 1000 часов на эффективную учебу?”. Потому что, в общем-то, если потратить достаточно много времени и сил, любой результат в спортпроге достижим. Но разница в эффективности может быть на порядки – призерство всероса может занять как полгода, так и пять лет. Если начать заниматься олимпиадами в 13 лет, то 2000 часов набегут сами собой, а вот в 16 лет надо будет поддерживать не только плотный график, но и заниматься эффективно.

Гораздо проще эффективно тратить время, когда если вокруг занятий выстроена правильная инфраструктура: есть подборки задач по темам, большой актуальный список задач для дорешки, доступна теория, примеры реализации и так далее. Можно это все попробовать организовать самому в интернете, потому что вся эта информация открытая, но гораздо эффективнее влиться в сообщество олимпиадников и впитывать чужой опыт. Подойдут летние школы, сборы или кружки. Оффлайн лучше, онлайн тоже пойдет.

Неочевидный бонус – прилив мотивации. Поход на кружок постепенно перепрошивает ваш мозг так, чтобы вы стали считать себя олимпиадником. Вы вливаетесь в комьюнити, смеетесь с мемов, обсуждаете рейтинг на кодфорсесе и какие-нибудь байки про прошедшие олимпиады. После этого гораздо проще мотивировать себя сдавать задачи, потому что это укладывается в нарратив вашей новой идентичности.

При этом нужно держать в голове, что и кружки, и интенсивы – это капля в море вашей подготовки. Большая часть подготовки происходит вне аудиторных часов. Аудиторные часы – это такая точка синхронизации, во время которой можно получить новую информацию, подборки задач, полезные ссылки, ответы на вопросы, напитаться энергией и мотивацией. Реальным ботаньем заниматься придется самостоятельно.

А удобнее всего самостоятельно ботать тогда, когда нет отвлекающих активностей. Тут есть две возможности для ускорения процесса — либо организация своего свободного времени так, чтобы в нем ничего не отвлекало (у меня это получается естественным образом, когда я ловлю фокус, поэтому полезных советов не будет), либо увеличение свободного времени в целом. В частности, среди олимпиадников очень популярно думать про оптимизацию школы, так как она занимает пять дней в неделю – утро, день, и заметную часть вечера. Есть три стратегии, из которых я одобряю две:

  1. Интенсивно ботать тогда, когда школы нет. Летом, на длинных выходных и на недельных каникулах, вечерами в лагерях.
  2. Учиться хорошо. Во-первых, зачетка может работать на тебя, и к старшей школе от тебя все отстанут. Во-вторых, если ты научишься эффективно решать домашку, включая самую бесполезную, то остальное тоже будет проще ботать эффективнее. В жизни много бесполезных сайд-квестов, домашка к ним готовит неплохо.
  3. Забить на школу, перейти на домашнее обучение, или просто перестать ходить. Я такой подход не одобряю, но это реализуемо, и кому-то приносит плоды. Часто проблемы будут возникать еще и со стороны родителей, которым эта стратегия не понравится.

А если про выбор кружков и школ, то нужно найти что-нибудь. Лучшая летняя школа – ЛКШ, лучший онлайн-кружок у Яндекса. Можно поискать, какие есть локальные кружки в вашем городе – например, поспрашивав ребят из вашего региона (а их список найти в результатах всероса прошлого года!).

Менеджим количество олимпиад

В течение учебного года проходит очень много различных контестов (можно найти какой-нибудь календарь олимпиад, там глаза разбегаются). Для каждой олимпиады, которая пройдет в январе-апреле, будет несколько раундов отборочных, которые пройдут в октябре-декабре. В школе самый завал будет, как обычно, к концу отчетных периодов.

Я это к чему – в учебный год и так сложно выделять время на продуктивную учебу, а дополнительные контесты усложняют эту задачу. Есть ситуации, когда нужно ходить на каждый отбор, чтобы прокачивать навык выступления на олимпиадах. Есть ситуации, когда нужно остаться дома и потратить то же самое время на учебу. Разницу между этими двумя ситуациями я опишу дальше, но так получилось, что нехватку времени мы обсуждаем здесь.

Мое мнение такое – при нехватке времени, до 11 класса обязательно нужно написать только Вкошп, Всерос, Открытую, и одну-две олимпиады из набора Технокубок-Иннополис-ИОИП-МОШ (или что там еще актуально). Вузовские олимпиады, типа высшей пробы, вообще не понимаю, зачем ходить писать слишком рано, если у вас нет времени и это происходит в ущерб учебе. Если мало времени — ну напиши 4-5 олимпиад за год, это 8-10 контестов вместе с отборочными. Любому человеку до 11 класса этого хватит, чтобы вникнуть в формат, оценить свою стрессоустойчивость, а в освобожденное время научиться чему-нибудь. Все равно практическая польза до 11 класса будет только от выигрыша всероса. Такая стратегия позволяет как можно больше выучить до 11 класса, а там уже, наоборот – ходить на контесты, как на работу – готовиться к каждому отдельно, к конкретным проблемсеттерским паттернам, прорешивать архивные варианты пачками.

Теория светофора

Я думаю, что упрощенно можно считать, что у каждого человека в зависимости от уровня подготовки существует три класса задач:

  1. Зеленые задачи: такие задачи, которые решаются без проблем от начала до конца. Ошибки в них редкие, по невнимательности – если написал бы код чуть по-другому, то наверняка бы заработало. Это не значит, конечно, что надо переписывать код с нуля в простых задачах, но это хорошее размышление для разбора полетов после дебага.
  2. Желтые задачи: задачи, которые решить не просто. Это занимает полчаса и больше, процесс размышления периодически заходит в тупик, в коде можно запутаться. В конце концов, такую задачу можно решить – хотя и не факт, что получится.
  3. Красные задачи: то, что ни в какую не решается при текущих навыках.

Деление между зеленой и желтой задачей проходит по уровню уверенности, который у вас есть при ее решении. На туре у вас не должно возникать вопроса, решите ли вы зеленую задачу. Это может занять какое-то время, но у вас не должно возникать ощущения тупика.

Деление между красной и желтой задачей лежит там, где у вас все еще получается понять разбор. Это не значит, что достаточно после разбора понять, какой алгоритм нужен был в задаче. Маркер скорее в понимании, как правильно должна была строиться цепочка размышлений, чтобы дойти до решения. Классической ошибкой будет сказать «а, ну это задача на бинпоиск по ответу», увидев ключевое слово в разборе нерешенной задачи. Вы должны уметь дорешать желтую задачу.

Зеленые задачи – это халявы, упражнения и баяны. Красные задачи – это гробы. Желтые задачи – это зона роста. На каждом контесте собственная планка должна быть одинаковой: быстро решить все зеленые задачи, идентифицировать и отложить все красные задачи, после чего вложить все силы в желтые задачи. Решение желтых задач – всегда лотерея, ведь там много что может пойти не так. И именно в решении желтых задач на туре лежит основная возможность для получения хорошего результата. Поэтому так важно обеспечить себе комфортные условия для решения таких задач – например,потратить много времени на зеленые задачи является серьезной ошибкой и недостаточной подготовкой.

Развитие олимпиадного программиста состоит в том, чтобы двигать обе границы: делать красные задачи желтыми, а желтые зелеными. Теоретическая подготовка поможет накопить достаточно знаний, чтобы иметь теоретическую возможность справиться с большинством задач, чтобы двигать красно-желтую границу. Практическое нарешивание объемами в зоне желтых задач двигает желто-зеленую границу.

Про Желтую Зону

Практически все олимпиады построены так, чтобы большинство задач (в случае школьных олимпиад – еще и подзадач) располагалось в желтых зонах пришедших участников. Красные или зеленые контесты очень плохо ранжируют участников (либо все решают все, либо никто ничего не решает), а вот в желтой зоне разные участники поведут себя по-разному. Более того – чем сильнее участники, тем меньше их красная зона, потому что гораздо меньше становится незвестных тем и алгоритмов. В моей (~2000 рейтинга CodeForces) желтой зоне лежат как задачи на 2000 рейтинга, так и задачи на 2800 рейтинга. Просто до задач на 2800 я не дохожу никогда, потому что если на 2000-задаче не застряну, то 2400-задача уж точно меня остановит. А если и она не остановит, то на 2800 тупо не останется времени.

Из этого следует примерно три вещи:

  1. Если у вас уже широкая желтая зона, уменьшение красной зоны несет сравнительно маленькую маржинальную пользу.
  2. Если вы знаете базовые графовые алгоритмы, динамическое программирование и дерево отрезков (и что-нибудь еще, что рассказывают перед ними) – у вас скорее всего уже широкая зона желтых задач, чуть ли не достаточная для взятия всероса.
  3. Если бы превращать желтые задачи в зеленые было просто, все бы давно были грандмастерами на CodeForces.

Чем сложнее задача – тем труднее ее перевести из желтой зоны в зеленую. А чем выше уровень – тем больше желтых задач, и они еще сложнее, чем были раньше. Основная сложность заключается в том, чтобы укладывать знания в какую-то систематизированную mental map, в которой просто ориентироваться. Это принципиально отличается от получения знания извне, потому что это требует внутренней проработки концептов, наступания на граблей, и большого количества итераций.

Я в свое время очень долго не мог интернализовать динамическое программирование, чтобы самостоятельно видеть динамики в задачах – хотя у меня много что решено было, почти всегда это было в дорешку. Потом у меня как-то щелкнуло, что самые простые дп получаются, если стараться самые ограничивающие параметры/флаги выносить в состояние. Моя жизнь больше не была прежней – я почти сразу поднялся до див1, взял регион и всерос. Это не было просто – я думал об этом полгода без передышки, прослушал раз пять одни и те же лекции про кузнечика и рюкзак, решал тонну задач. Ну и щелкнуло в какой-то момент. А потом оказалось, что все олимпиадное программирование в моей mental map напрямую вытекает из ДП, поэтому все остальное сразу оказалось очень простым.

Для расширения желтой зоны достаточно прослушать пару лекций про красную тему и посмотреть на несколько классических применений. Одной лекции, кстати, обычно не хватает – так получается запомнить только саму технику (ответ на вопрос что?), но не ответ на вопрос зачем? (в другом порядке запоминать, кстати, как будто бы еще более бессмысленно, потому что зачем? очень сильно зависит от деталей что? – я регулярно вижу, как плохо усвоившие материал люди ожидают какие-то странные вещи от структур).

Для перевода из желтой в зеленую зону нужно на протяжении недель (а чаще – месяцев!) встречать тему в реальных задачах, где не указана техника для решения. Нужно думать, проваливаться, потом в разборе встречать упоминание известной техники – и дальше пытаться связать свои тупиковые размышления с неожиданным применением техники. Кто-то скажет, что даже разборы читать не надо – но мне они помогали держать объемы и выступали некоторым обучающим материалом. В любом случае надо сначала завести свой мыслительный процесс во все возможные тупики.

В моем представлении идеальная желтая зона должна быть компактной. У тебя должно быть сколько-то приемов и теории, которые ты еще не смог уложить в голову и отточить, и над ними ты сейчас активно работаешь. В такой картине мира нужно слушать сколько-то лекций наперед, чтобы к их второму прослушиванию какие-то желтые задачи перешли в зеленые, и освободилось место под новые желто-красные задачи.

В реальной жизни, как правило, желтая зона какая угодная, но не компактная. До того, как нормально усвоена база, школьники строем идут слушать сложную лекцию. Преподаватели физически не умеют интернализовать детям знание, а делать что-то на занятиях надо, поэтому они идут читать следующую тему по списку, хотя для нее еще рановато. Очень быстро в желтой зоне оказываются более-менее все реалистичные задачи, после чего люди оказываются в ловушке широкой желтой зоны – кажется, что можешь решить все, но на самом деле у тебя на каждой задаче большой шанс споткнуться.

Единственный реальный способ разгребать желтую зону – решать задачи. Много задач.

Решай Желтые Задачи

Какие задачи надо решать? Вся описанная мной в предыдущих частях теория явно указывает на то, что это должны быть желтые задачи. Зеленые задачи можно решать в качестве восстановительных тренировок в те дни, когда мало времени, или по фану. Какое-то количество зеленых задач будет подворачиваться на контестах и олимпиадах в любом случае. На них может быть полезно обращать внимание время от времени, чтобы нарабатывать трюки, которые ускоряют решение простых задач. Красные задачи лучше вообще не трогать по определению.

Строить свою подготовку нужно как раз исходя из количества желтых задач, которые получается решать. Тут нужно закладывать время на два типа задач:

  • Желтые задачи, которые получится решить или которые совсем очевидны после разбора (назовем их желто-зелеными). Нормальный темп для роста, имхо: штук пять-десять таких задач в неделю.
  • Желтые задачи, которые пойдут в дорешку, и даже после разбора не сходу понятно, что делать (назовем их желто-красными). Нормальный темп для роста, имхо: дорешка одной-двух таких задач в неделю.

С желто-зелеными задачами все ясно – было непонятно, получится или нет – но получилось, мы молодцы. Они постепенно расширяют категорию зеленых – в основном через уверенность.

Желто-красные задачи приходится дорешивать. Дорешка такой задачи может занимать много времени, хоть несколько недель. Это фрустрирующее занятие, потому что код обычно получается отвратительным, ничего не работает, тестирование и дебаг идут очень тяжело. Но тут обычно лежит главная точка роста, интернализации знания и улучшения навыков разработки и отладки.

Очень сложно заставить себя отказываться от участия в каком-нибудь новом контесте. Особенно, если за него дают какие-то очки рейтинга. Но такой контест добавит задач в список для дорешки, и потратит время, которое можно было бы потратить на дорешивание прошлых задач из списка для дорешки.

То есть за новый онлайн-контест можно решить одну-три желто-зеленые задачи, а также расширить свой лист дорешки оставшимися задачами (которые ты даже не успел прочитать на туре). При этом за можно было бы желто-красную задачу так-то дорешать – мой обменный курс, указанный выше, считает это хорошей сделкой!

Если решать какие-то онлайн-соревнования новичку в качестве тренировки, то лучшим по моему мнению будет Atcoder Beginner Contest. Он длится 1:40, а его задачи растут по уровню очень резко – поэтому зеленые задачи закрываются моментально, и ты остаешься с одной-двумя желто-зелеными задачами и одной желто-красной задачей. Более того, там такая мета, что можно давать баянистые задачи – поэтому задачи выполняют больше тренировочных функций и чаще затрагивают какие-то классические алгоритмы. Это все еще хуже, чем решать задачи из архивов, но это гораздо эффективнее обыкновенного div2 раунда на кодфорсесе, который я считаю скорее развлечением. В общем, если вам нужны разнобой-задачи в архив, горячо рекомендую.

Олимпиады

Если потратить тысячу-другую часов на желтые задачи, вы будете неостановимы. В этот момент знаний обычно достаточно для высоких результатов, и на первое место выходят такие вещи, как скорость отладки, работа со стрессом и оптимизация баллов. Надо будет подготовить правильную стратегию на тур, разобраться в формате, быть готовым стресс-тестировать и набирать баллы на подгруппах.

То есть в какой-то момент можно себе позволить решать больше олимпиад и онлайн-контестов, чтобы получать именно олимпиадный опыт – решение задач в условиях стресса и ограниченного времени. В моем представлении это не самый важный аспект подтоговки. Скорее он помогает вам реализовывать ваш потенциал, а сам потенциальный максимум двигается от ботанья и дорешки, см. прошлые главы. Разумно для меня выглядит начинать фокусироваться на контестах больше, когда форма для желаемых результатов достаточная, но мешают какие-то не напрямую связанные с ботаньем вещи.

Я про все непосредственные трюки писал в посте про регион еще в 2020 году, и с тех пор этот аспект подготовки стал гораздо популярнее. Я не очень хочу разбирать тут что-то еще раз, так что простым чеклистом:

  • Подгруппы в школьных олимпиадах – это невероятно важный концепт. Решать нужно не задачи, а подзадачи, и набирать баллы в первую очередь на зеленых и очевидных пунктах, и только потом фокусироваться на желтой зоне. По моим прикидкам, на стандартном туре региона в зеленой группе (или желто-зеленой для олимпиадников, у которых мало практики) находится где-то половина баллов.
  • Стресс-тестирование помогает ускорять сдачу желтых задач через сравнение ответов с зелеными решениями, которые у вас уже написаны. Это инвестиция 10 минут времени, которая обычно окупается тем, что вы либо сдаете задачу, либо откладываете ее. Оба варианта лучше, чем перечитывать двадцать раз экран с кодом.
  • Работа со своей психикой и нервами перед туром тоже важна. Лучше всего перформанс показывают, по моим наблюдениям, либо те, кто очень хорошо готов, но при этом все равно настроен на серьезную и трудную работу во время контеста – либо те, кто находятся на чилле, потому что у них все и так хорошо – они просто пришли задачи решать. Самое частое переживание для остальных – не взять олимпиады и не сдать ЕГЭ, не поступить в вуз и оказаться в . Мне помогает от подобных мыслей представить себе, сколько в этом худшем сценарии есть промежуточных ступеней, где везде надо провалиться – становится понятно, что ни егэ, ни плохой вуз сами по себе не являются приговором, но главное – что это все какое-то гипотетическое (и не самое вероятное) будущее.
  • Что так и не стало популярно – так это концепция само-отчета о туре: во сколько что сдал, какое время на что потратил. Это сильно повышает осознанность во время тура, дает понять, когда ты куда-то закопался. Ну и лог после тура помогает анализировать ошибки. Я даже себе тулзу специальную запилил на время своей подготовки к icpc, настолько эта концепция полезная!

Ну и мне кажется, не все достаточно хорошо понимают, как разбирать задачи с подгруппами при подготовке. Нужно вот прочитать задачу, посмотреть на все подгруппы, и про каждую сказать, что она дает участнику, как должна влиять на решение. Любая подгруппа – это ограничения, которые помогают лучше понять, какую часть задачи можно вначале проигнорировать, чтобы получить первое приближение решения. В частности, в куче задач нужно писать переборы на 5 баллов, потому что перебор является нулевым приближением практически любой задачи. Среди подгрупп нужно учиться находить зеленые, которые можно сдать без лишнего стресса и размышлений. Этот навык можно даже без написания кода тренировать, просто смотря пдфки с условиями с архивных олимпиад.

Надо заметить, что много у кого ощущение собственной готовности часто расходится с реальным перформансом – в основном потому люди считают, что их желто-зеленые задачи являются зелеными. Это скрывается в таких стратегиях, как “A и B надо обязательно сдать на 100” у участников, которые не могут написать даже на 50 . Это происходит, потому что люди воспринимают однократный успех как повод для того, чтобы перевести какую-то задачу в зеленую категорию, хотя на самом деле нужно много времени, чтобы перевести желто-зеленые задачи в зеленую категорию (особенно всякие конструктивы, в которых не нужно никаких специальных знаний, но нужна правильная интуиция и наблюдения!).

С точки зрения подготовки всегда лучше считать, что ты чуть слабее, чем ты есть на самом деле — не в демотивирующем смысле, а скорее быть готовым к трудностям. Это помогает и правильный майндсет на тур иметь, и не стесняться решать подгруппы, и не стесняться готовиться к подгруппам, да и после тура скорее всего тогда будешь больше доволен собой. Но в частности, это может значить, что нужно до тура прямо сказать себе, что не факт, что ты сегодня возьмешь диплом или пройдешь на всерос. Но это, вообще-то, никому не гарантировано!

Не главное

Несмотря на то, что выигрывать всерос очень круто (а для этого нужно решать желтые задачи!), это не основная ваша цель на жизнь. Я согласен с тем, что в школе альтернатив не так много, но вот после выпуска из школы никто не вспомнит про ваш всерос, если вы сами про него не вспомните.

Я вот сейчас этот лонгрид пишу, и на самом деле ворошу прошлое, про которое абсолютно все вокруг меня забыли. Все чем-то заняты, честное слово, у всех все хорошо. Просто так получилось, что я преподавал достаточно много, поэтому эта тема все еще со мной.

В олимпиадах есть ровно два плюса, которые реально важны – наличие комьюнити и развитие способности сесть и сфокусированно работать в сторону какой-то цели на продолжении года-другого. Если первое делает ваши выпускные годы приятными (а это многого стоит!), то второе дает вам очень полезные навыки, которые перекладываются и на егэ, и на универ, и на работу.

Место для дополнений

Если мне в голову будут приходить какие-то еще дополнения для поста, я буду их приписывать ниже. Но я хотел бы этого избежать, конечно, пост же на то и FAQ, чтобы после него не оставалось вопросов. Решайте задачи, ботайте, будьте в комьюнити, участвуйте в олимпиадах и будет вам счастье.