QOJ.ac

QOJ

حد الوقت: 1 s حد الذاكرة: 256 MB مجموع النقاط: 100

#69. Лампы

الإحصائيات

В длинном коридоре в ряд расположены $N$ ламп. Лампы пронумерованы от $1$ до $N$. Каждая лампа либо выключена, либо включена. Для изменения состояний ламп предусмотрен специальный механизм. За одну операцию можно выполнить одно из следующих действий:

  • Выбрать целые числа $p$ и $q$, удовлетворяющие $1 \le p \le q \le N$, и выключить лампы $p, p+1, \ldots, q$.
  • Выбрать целые числа $p$ и $q$, удовлетворяющие $1 \le p \le q \le N$, и включить лампы $p, p+1, \ldots, q$.
  • Выбрать целые числа $p$ и $q$, удовлетворяющие $1 \le p \le q \le N$, и переключить состояния ламп $p, p+1, \ldots, q$ (с выключенного на включённое или с включённого на выключенное).

Текущие состояния ламп задаются строкой $A$ длины $N$. Символ строки $A$ на позиции $i$ ($1 \le i \le N$) равен 0, если лампа $i$ выключена, и 1, если она включена. Мы хотим за как можно меньшее число операций привести лампы в состояния, заданные строкой $B$ длины $N$. Символ строки $B$ на позиции $i$ ($1 \le i \le N$) равен 0, если мы хотим выключить лампу $i$, и 1, если хотим её включить.

Напишите программу, которая по числу ламп, их текущим и целевым состояниям вычисляет минимальное число операций, необходимое для достижения целевых состояний.

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

Прочитайте следующие данные из стандартного ввода.

$$ \begin{array}{l} N \\ A \\ B \end{array} $$

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

Выведите одну строку в стандартный вывод. Она должна содержать минимальное число операций, необходимое для достижения целевых состояний.

Ограничения

  • $1 \le N \le 1\,000\,000$.
  • $A$ и $B$ — строки длины $N$.
  • Каждый символ строк $A$ и $B$ равен 0 или 1.

Подзадачи

  1. (6 баллов) $N \le 18$.
  2. (41 балл) $N \le 2\,000$.
  3. (4 балла) Каждый символ строки $A$ равен 0.
  4. (49 баллов) Дополнительных ограничений нет.

Примеры

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

8
11011100
01101001

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

4

Примечание

В этом примере целевых состояний можно достичь за 4 операции, например следующим образом:

  1. Переключить состояния ламп $1$, $2$, $3$ и $4$. Состояния ламп станут 00101100.
  2. Включить лампу $2$. Состояния ламп станут 01101100.
  3. Переключить состояния ламп $6$, $7$ и $8$. Состояния ламп станут 01101011.
  4. Выключить лампы $6$ и $7$. Состояния ламп станут 01101001.

Поскольку достичь целевых состояний менее чем за 4 операции невозможно, выведите 4.

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

13
1010010010100
0000111001011

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

3

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

18
001100010010000110
110110001000100101

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

5

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
EditorialOpen Official EditorialQingyu- Download
#255EditorialOpen题解jianglyView

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.