Я бы в этом случае отправила в МФТИ. Там разные уровни, можно подобрать под себя. Главное, чтобы не замахивался на нерешабельное для него. Лучше решать 80% задач на более низком уровне, чем решать 1-2 на более высоком. А МФТИ - центр, который подготавливает межнарников по программированию. Преподавательский состав хороший.