D. Обмены в двух строках
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Заданы две строки $$$a$$$ и $$$b$$$, состоящие из строчных букв латинского алфавита, каждая длины $$$n$$$. Символы обеих строк имеют позиции от $$$1$$$ до $$$n$$$ включительно.

Вы можете производить следующие изменения:

  • Выбрать любую позицию $$$i$$$ ($$$1 \le i \le n$$$) и поменять местами символы $$$a_i$$$ и $$$b_i$$$;
  • Выбрать любую позицию $$$i$$$ ($$$1 \le i \le n$$$) и поменять местами символы $$$a_i$$$ и $$$a_{n - i + 1}$$$;
  • Выбрать любую позицию $$$i$$$ ($$$1 \le i \le n$$$) и поменять местами символы $$$b_i$$$ и $$$b_{n - i + 1}$$$.

Заметим, что для нечетного $$$n$$$ формально можно поменять $$$a_{\lceil\frac{n}{2}\rceil}$$$ с $$$a_{\lceil\frac{n}{2}\rceil}$$$ (и то же самое для строки $$$b$$$), но это изменение не имеет смысла. Также вы можете менять местами одинаковые символы, но это изменение тоже не имеет смысла.

Вы хотите сделать эти строки равными, применяя изменения, описанные выше, в любом порядке. Но очевидно, что бывают случаи, когда невозможно сделать две строки равными, применяя эти обмены.

За один предварительный ход вы можете заменить любой символ в $$$a$$$ любым другим символом. Другими словами, за один предварительный ход вы можете выбрать любую позицию $$$i$$$ ($$$1 \le i \le n$$$), любой символ $$$c$$$ и применить следующее присвоение: $$$a_i := c$$$.

Ваша задача — найти минимальное количество предварительных ходов, после применения которых можно будет сделать строки $$$a$$$ и $$$b$$$ равными при помощи применения некоторого количества изменений, описанных в списке выше.

Заметим, что количество изменений, которое вы сделаете после некоторого количества предварительных ходов, не важно. Также заметим, что вы не можете применять предварительные ходы к строке $$$b$$$ или применять какой-либо предварительный ход после того, как первое изменение было сделано.

Входные данные

Первая строка входных данных содержит одно целое число $$$n$$$ ($$$1 \le n \le 10^5$$$) — длину строк $$$a$$$ и $$$b$$$.

Вторая строка содержит строку $$$a$$$, состоящую ровно из $$$n$$$ строчных букв латинского алфавита.

Третья строка содержит строку $$$b$$$, состоящую ровно из $$$n$$$ строчных букв латинского алфавита.

Выходные данные

Выведите одно целое число — минимальное число предварительных ходов, которое необходимо применить перед изменениями, чтобы можно было сделать равными строки $$$a$$$ и $$$b$$$ при помощи какой-то последовательности изменений из списка, описанного выше.

Примеры
Входные данные
7
abacaba
bacabaa
Выходные данные
4
Входные данные
5
zcabd
dbacz
Выходные данные
0
Примечание

В первом тестовом примере предварительные ходы будут следующие: $$$a_1 := $$$'b', $$$a_3 := $$$'c', $$$a_4 := $$$'a' и $$$a_5:=$$$'b'. После этого строка $$$a = $$$"bbcabba". Теперь мы можем получить равные строки при помощи следующей последовательности изменений: $$$swap(a_2, b_2)$$$ и $$$swap(a_2, a_6)$$$. Не существует способа использовать менее $$$4$$$ предварительных ходов перед последовательностью изменений для того, чтобы сделать строки равными, поэтому ответ на первый тестовый пример равен $$$4$$$.

Во втором тестовом примере строки $$$a$$$ и $$$b$$$ почти равны. Здесь не требуется предварительных ходов. Но нужна следующая последовательность изменений: $$$swap(b_1, b_5)$$$, $$$swap(a_2, a_4)$$$.