Как участник всероссийских школьных олимпиад по информатике и следящий за студенческими (у самого в вузе на это времени, к сожалению, не осталось), могу сказать, что база для этих побед закладывается ещё до университета - почему-то так исторически сложилось, что детей еще в школе натренировывают на выступления на соревнованиях по спортивному программированию. Проводят общегородские и внутришкольные еженедельные кружки и выездные олимпиадные школы, в которые многие школьники ездят по несколько раз в год, просто потому что им интересно этим заниматься. Уровень российских школьников в олимпиадах по информатике по сравнению с другими странами можно увидеть на ежегодной International Olympiad in Informatics, где они постоянно завоевывают золотые и реже серебрянные медали. После 11 класса участники школьных олимпиад разбредаются по топовым вузам, которые можно перечислить по пальцам одной руки, и каждый находит себе команду по уровню. Так и собираются команды, в будущем занимающие первые места на ACM ICPC, том самом студенческом чемпионате. Благодаря наличию отличной базы, полученной в школе, тренерам, которые сами в прошлом участвовали, остается просто развивать ее дальше, ведя студентов к победе.