Вам даны две бинарные строки $$$a$$$ и $$$b$$$ равной длины. Вы можете производить над строкой $$$a$$$ следующие операции:
Найдите минимальную стоимость, которую нужно потратить, чтобы сделать строку $$$a$$$ равной строке $$$b$$$. Менять строку $$$b$$$ не разрешается.
Первая строка входных данных содержит одно целое число $$$n$$$ ($$$1 \le n \le 10^6$$$) — длина строк $$$a$$$ и $$$b$$$.
Вторая и третья строки содержат строки $$$a$$$ и $$$b$$$ соответственно.
Обе строки $$$a$$$ и $$$b$$$ имеют длину $$$n$$$ и состоят только из «0» и «1».
Выведите минимальную стоимость, которая требуется, чтобы превратить строку $$$a$$$ в $$$b$$$.
3
100
001
2
4
0101
0011
1
В первом примере одним из оптимальных способов является следующий: нужно инвертировать позицию $$$1$$$, а затем позицию $$$3$$$. Тогда строка $$$a$$$ меняется следующим образом: «100» $$$\to$$$ «000» $$$\to$$$ «001». Стоимость составляет $$$1 + 1 = 2$$$.
Другим оптимальным решением является следующее: можно поменять местами позиции $$$1$$$ и $$$3$$$, тогда строка $$$a$$$ меняется как «100» $$$\to$$$ «001», стоимость также равна $$$|1 - 3| = 2$$$.
Во втором примере оптимальным решением является следующее: нужно поменять местами позиции $$$2$$$ и $$$3$$$, тогда строка $$$a$$$ меняется как «0101» $$$\to$$$ «0011». Стоимость равна $$$|2 - 3| = 1$$$.
Название |
---|