rubinchik.me's blog

By rubinchik.me, 3 years ago, In Russian

Всем привет!

Принимаю эстафету от alexfox и рассказываю про спортивное программирование в УрФУ. Через неделю посты снова вернутся в Сашин блог. В семинаре могут принимать участие все студенты УрФУ и школьники нашего региона. UPD: Большинство олимпиадников сейчас учатся на ФИИТ, однако в 2023 году мы запускаем первый в России алгоритмический бакалавриат, поэтому, вероятно, олимпиадный центр сместится туда.

Мы считаем, что главное в спортивном программировании — это решать задачи. Для новичков это архивы и немного тренировки, для более опытных ребят — немного архивов и много тренировок и дорешивания. Мы говорим об этом везде и всегда. У наших студентов есть возможность ездить на сборы, участвовать в соревнованиях и других активностях (подробнее об этом Саша писал в посте про ICPC в УрФУ). Но все равно как наши студенты, так и ребята за пределами УрФУ, уверены, что они прокачиваются во многом из-за того, что слушают лекции. Это не так. Теория — лишь один из инструментов, помогающих решать задачи. Слушать лекции нужно только тогда, когда ты столкнулся с задачей в реальной жизни: решал контест или архив задач по возрастанию сложности и наткнулся на задачу, для решения которой нужна новая теория (спойлер: это очень редкое событие). Если на контесте вы решаете две-три задачи из 12, изучать теорию для пятой-шестой задач вам еще рано.

Тем не менее, наши (и не только наши) студенты по-прежнему хотят слушать теорию, поэтому мы идем на компромиссы.

Как минимизировать ущерб от лекций?

Есть идеальное решение:

  1. Лекции должны слушать действительно крутые ребята, которые умеют решать большую часть задач на соревнованиях и просто “залатывают дыры” (небольшие) в своих знаниях.
  2. После семинара нужно давать задачи и добиваться того, чтобы все участники семинара их написали и сдали.

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

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

Поэтому мы стараемся выжимать максимум из того, что есть:

  • Мы решили, что читать лекции должны сами студенты или школьники. Тогда на каждом семинаре глубоко разбираться в теме будет как минимум один студент/школьник — сам лектор.
  • Модерировать семинар должен человек с хорошим кругозором (шире олимпиад), чтобы на выходе получались не классические олимпиадные лекции, но была и дополнительная информация из научного и прикладного миров. Например, когда говорим про сортировки и обсуждаем, что нельзя отсортировать быстрее, чем за O(n*log(n)) обменной сортировкой, нужно рассказывать, что для сортировки целых чисел есть алгоритм за O(n*log log(n)). Или что на практике для чисел до 10^9 можно сделать два линейных пробега поразрядной сортировки. Модерацией наших семинаров занимается Дима Косолобов — тренер УрФУ по спортивному программированию, создатель компьютерных практик по алгебре и нашего курса по алгоритмам, а также активный ученый-алгоритмист.

Как устроены семинары

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

Семинары проходят раз в неделю в Discord. У них есть модератор (Дима), который отвечает на вопросы по теме, и менеджер (Ксюша), которая защищает нас от хаоса: составляет расписание семинаров, подбирает лекторов и утверждает их список у модератора, а также ведет план докладов и делает анонсы, чтобы все помнили про лекцию.

Лекторами, как я уже сказал, являются сами школьники и студенты. Тема для доклада выбирается и утверждается коллективно. При этом лектор не обязан знать тему, которую он собирается рассказать, главное — желание разобраться в ней.

Бонус: за выступление лектор получает символическую плату, благодаря чему докладчики у нас появляются регулярно.

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

Поступайте в алгоритмический бакалавриат и присоединяйтесь к нашему сообществу спортивного программирования. А если хотите посмотреть на семинары уже сейчас, заходите на наш ютуб-канал (там есть записи прошлых лет) и следите за анонсами в телеграм-канале СП в УрФУ. Подключиться к семинарам можно через Discord.

А через неделю к вам вернется alexfox с постом про Екатеринбург. Не пропустите :)

  • Vote: I like it
  • +39
  • Vote: I do not like it