Кластеризация - задача машинного обучения, в которой требуется разбить объекты на группы (кластеры), так чтобы объекты одной группы (кластера) были схожими, а объекты разных групп (кластеров) отличались.
Отдельно олимпиадное программирование не позволит вам реализовывать поставленные задачи. Но я должен заверить вас в том, что на решение олимпиадной задачи можно потратить больше времени и сил, чем на решение любой другой. Тут главное - практика (как и в любом другом разделе программирования). Вам даже не понадобится подключение особых библиотек.