Elnurhan, посмотрел саму задачу, тут нужно юзать unordered_set. Считать в него числа, потом пройтись по нему и смотреть, есть ли противоположное число.
Евгений Шатунов, предлагаешь в таких случаях лезть в чужой namespace или в stl? Детали я опустил намеренно, объяснив важное в данном случае свойство ADL простым языком. Предлагаемая техника с обёрткой определённо имеет право на существование.
Тогда уж не на слога, а на морфемы. На Python для русского есть pymorphy. Под C++ не нашёл, видимо, на плюсах редко обрабатывают текст. Что логично, потому что он не поддерживает Unicode из коробки.