Чтобы успешно писать олимпиады, нужны знания и навыки - нужно уметь реализовывать достаточное количество алгоритмов и иметь навыки отладки программ на языке С++. Да, можно изучать алгоритмы, реализовывать их, отлаживать программы и не участвовать в олимпиадах - и иметь те же знания и навыки, или выше, если реализовывал сложные проекты. Но мой сын не увлекался программированием, он просто подготовился к ЕГЭ на 100. У сына на первом курсе было 2 семестра алгоритмов и С++, ребята-олимпиадники справлялись намного лучше него, это объективно, а не недооценивание. Возможно, что ребята - проектники были бы ещё круче, но про таких одногруппников у сына нет информации