Сейчас понятие "олимпиада по математике" стало несколько более размытым. Классические олимпиады (два последних тура Всероссийской, Московская, Санкт-Петербургская, Турнир городов и пр.) представляют собою соревнования по решению весьма сложных задач (причём сложность в последние годы растёт, так как растёт профессионализм участников таких олимпиад). Эти задачи довольно далеки от школьных учебников и, если ученик не решал их до 10 класса, научиться (года за полтора) это делать - очень сложная задача, шансов на успех мало. Что именно надо в этом случае делать, хорошо написали выше.
Однако иногда олимпиадами называют другие соревнования - олимпиады ВУЗов, олимпиады типа ОММО, "Покори Воробьёвы горы" или "Ломоносов". В этих соревнованиях олимпиадные задачи присутствуют лишь частично, многие задачи там - сложные школьные задачи (типа задач ЕГЭ или бывших вступительных задач в ВУЗы). По сути, эти олимпиады и есть замаскированные под олимпиады досрочные вступительные экзамены. Подготовиться к таким олимпиадам (если стоит такая цель) за полтора года вполне реально, для этого есть и хорошие курсы и репетиторы.
Онлайн-курсы в помощь — "Фоксфорд", например, предлагают тучу курсов по разным предметам в формате вебинаров с преподами МГУ, Бауманки, МФТИ и т.д. и сравнительно недорого.