Первое расхождение в C++
Алгоритм mismatch ищет первую позицию, на которой
элементы двух диапазонов перестают совпадать.
Если общий префикс совпадает полностью, итератор остановится на первом хвосте. Возвращается пара итераторов - по одному на каждый диапазон в точке расхождения. Запишем два вектора и выведем значения в найденной паре:
#include <algorithm>
#include <iostream>
#include <vector>
int main() {
std::vector<int> a = {1, 2, 9};
std::vector<int> b = {1, 2, 3};
auto pair = std::mismatch(a.begin(), a.end(), b.begin());
std::cout << *pair.first << " " << *pair.second << "\n";
return 0;
}
Сравните строки "abx" и "aby" в двух векторах символов через mismatch и выведите оба символа в точке расхождения.