QOJ.ac

QOJ

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

#69. Lámparas

الإحصائيات

Hay $N$ lámparas en fila en un pasillo largo. Las lámparas están numeradas del $1$ al $N$. Cada lámpara está apagada o encendida. Existe un mecanismo especial para cambiar sus estados. En una operación podemos realizar una de las siguientes acciones:

  • Elegir enteros $p$ y $q$ con $1 \le p \le q \le N$ y apagar las lámparas $p,p+1,\ldots,q$.
  • Elegir enteros $p$ y $q$ con $1 \le p \le q \le N$ y encender las lámparas $p,p+1,\ldots,q$.
  • Elegir enteros $p$ y $q$ con $1 \le p \le q \le N$ e invertir los estados de las lámparas $p,p+1,\ldots,q$ (de apagada a encendida o de encendida a apagada).

Los estados actuales de las lámparas se representan mediante una cadena $A$ de longitud $N$. El carácter $i$-ésimo ($1 \le i \le N$) de $A$ es 0 si la lámpara $i$ está apagada y 1 si está encendida. Queremos que los estados de las lámparas sean los representados por una cadena $B$ de longitud $N$, usando el menor número posible de operaciones. El carácter $i$-ésimo ($1 \le i \le N$) de $B$ es 0 si queremos que la lámpara $i$ esté apagada y 1 si queremos que esté encendida.

Escribe un programa que, dados el número de lámparas, sus estados actuales y los estados objetivo, calcule el mínimo número de operaciones necesario para alcanzar los estados objetivo.

Entrada

Lee los siguientes datos de la entrada estándar.

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

Salida

Escribe una línea en la salida estándar. Debe contener el mínimo número de operaciones necesario para alcanzar los estados objetivo.

Restricciones

  • $1 \le N \le 1\,000\,000$.
  • $A$ y $B$ son cadenas de longitud $N$.
  • Cada carácter de $A$ y $B$ es 0 o 1.

Subtareas

  1. (6 puntos) $N \le 18$.
  2. (41 puntos) $N \le 2\,000$.
  3. (4 puntos) Cada carácter de $A$ es 0.
  4. (49 puntos) Sin restricciones adicionales.

Ejemplos

Entrada 1

8
11011100
01101001

Salida 1

4

Nota

En este ejemplo podemos alcanzar los estados objetivo en 4 operaciones, por ejemplo, de la siguiente manera:

  1. Invertir los estados de las lámparas $1$, $2$, $3$ y $4$. Los estados de las lámparas pasan a ser 00101100.
  2. Encender la lámpara $2$. Los estados de las lámparas pasan a ser 01101100.
  3. Invertir los estados de las lámparas $6$, $7$ y $8$. Los estados de las lámparas pasan a ser 01101011.
  4. Apagar las lámparas $6$ y $7$. Los estados de las lámparas pasan a ser 01101001.

Como es imposible alcanzar los estados objetivo en menos de 4 operaciones, se debe imprimir 4.

Entrada 2

13
1010010010100
0000111001011

Salida 2

3

Entrada 3

18
001100010010000110
110110001000100101

Salida 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.