Есть ли функция в STL, которая разделит последовательность на смежные подпоследовательности, где допустим некоторый предикат?
Например, следующая последовательность:
1 1 1 0 1 1 0 0 1 1 1 1
Учитывая предикат v == 1
, следует вернуть три подпоследовательности:
1 1 1
1 1
1 1 1 1
Порядок групп и элементов внутри этих групп должен быть сохранен.
Я могу написать цикл, чтобы сделать это в O (N), но я пытаюсь узнать больше о STL и избежать циклов для такого рода вещей. Шон Родитель большой разговор, С++ Seasoning, это моя мотивация.
Просматривая <algorithm>
, я ничего не выскочил.