Олимпиадный тренинг

Задача . A. Превратить A в B


Вам даны два массива \(a\) и \(b\) длины \(n\), каждый элемент массивов — либо \(0\), либо \(1\).

Вы можете выполнять операции \(2\) типов.

  • Выбрать индекс \(i\) и изменить \(a_i\) на \(1-a_i\).
  • Переупорядочить массив \(a\) произвольным образом.

Найдите минимальное количество операций, необходимое для того, чтобы массив \(a\) стал равен массиву \(b\).

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

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число \(t\) (\(1 \leq t \leq 400\)) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка каждого набора входных данных содержит одно целое число \(n\) (\(1 \leq n \leq 100\)) — длину массивов \(a\) и \(b\).

Вторая строка содержит \(n\) целых чисел \(a_1,a_2,\ldots,a_n\) (\(a_i\) равно \(0\) или \(1\)) — массив \(a\).

Третья строка содержит \(n\) целых чисел \(b_1,b_2,\ldots,b_n\) (\(b_i\) равно \(0\) или \(1\)) — массив \(b\).

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

Для каждого набора входных данных выведите минимальное число операций для превращения \(a\) в \(b\).

Примечание

В первом примере нужна только одна операция: изменить \(a_1\) на \(1-a_1\). После этого \(a = [0, 0, 1]\), что равно \(b\).

Во втором примере один из оптимальных способов — сначала изменить \(a_3\) на \(1 - a_3\), затем переупорядочить \(a\).

В третьем примере операции не требуются.

В четвертом примере оптимально переупорядочить \(a\), чтобы получился массив \([0, 1, 1, 0]\).


Примеры
Входные данныеВыходные данные
1 5
3
1 0 1
0 0 1
4
1 1 0 0
0 1 1 1
2
1 1
1 1
4
1 0 0 1
0 1 1 0
1
0
1
1
2
0
1
1

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя