That’s a rotate
template <typename It>
auto slide(It f, It l, It p) -> pair<I, I> {
if (p < f) return {p, rotate(p, f, l)};
if (l < p) return {rotate(f, l, p), p};
return {f, l};
}
That’s a rotate
template <typename It>
auto slide(It f, It l, It p) -> pair<I, I> {
if (p < f) return {p, rotate(p, f, l)};
if (l < p) return {rotate(f, l, p), p};
return {f, l};
}