The function replace_copy is used to replace specific elements while copying an entire range.
template<class InputIterator, class OutputIterator, class T> OutputIterator replace_copy (InputIterator first, InputIterator last, OutputIterator result, const T& old_value, const T& new_value);
The position of the last copied element is returned.