QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 1024 MB Total points: 100

#19052. Torres de dados

Statistics

Sanghun tiene $N$ dados cúbicos, llamados dado $1$, dado $2$, $\ldots$, dado $N$, en ese orden.

Cada cara de cada dado tiene un entero entre $1$ y $6$. Las caras distintas de un mismo dado siempre tienen números distintos, y los números de caras opuestas siempre suman $7$.

Sanghun quiere construir torres con los $N$ dados. El procedimiento exacto es el siguiente.

  1. Lanza los $N$ dados al suelo.

  2. Anota el número de la cara superior de cada dado. Del dado $1$ al dado $N$, llama a estos números $A_1,A_2,\ldots,A_N$.

  3. Elige al menos un dado del suelo y construye una nueva torre sobre un escritorio. Puedes levantar y mover los dados, pero no cambiar su orientación. Puedes apilarlos en cualquier orden, todos verticalmente en una sola columna. Los números de dos caras que se toquen deben ser iguales.

  4. Repite el paso 3 hasta que no queden dados en el suelo.

Por ejemplo, el proceso puede realizarse así.

  1. Sanghun lanza cuatro dados al suelo. Las caras superiores de los dados $1$ a $4$ muestran $3,3,5,4$, respectivamente.

  2. Sanghun elige los dados $1$, $2$ y $4$ y los apila de abajo arriba en el orden $1$, $4$, $2$. La cara superior del dado $1$ y la inferior del dado $4$ muestran ambas $3$ y se tocan. Asimismo, la cara superior del dado $4$ y la inferior del dado $2$ muestran ambas $4$ y se tocan.

  3. Sanghun elige el dado $3$ que queda en el suelo y construye una torre formada por ese único dado.

  4. No quedan dados en el suelo, así que el proceso termina. Sanghun ha construido dos torres en total.

Sanghun quiere elegir cómo apilar los dados para minimizar el número de torres. Dados los números de las caras superiores de los $N$ dados tras lanzarlos, encuentra el mínimo número posible de torres.

Restricciones

  • Todos los números dados son enteros.

  • $2\le N\le200\,000$.

  • $1\le A_i\le6$ para todo entero $i$ con $1\le i\le N$.

Subtareas

  1. (8 puntos) $N=2$.

  2. (28 puntos) Cada cara superior muestra $3$ o $4$. Es decir, $A_i=3$ o $A_i=4$ para todo entero $i$ con $1\le i\le N$.

  3. (31 puntos) Para cualesquiera dos enteros distintos $x,y$ con $1\le x,y\le6$, el número de dados con $x$ arriba es distinto del número con $y$ arriba.

  4. (33 puntos) Sin restricciones adicionales.

Entrada

La primera línea contiene el entero $N$.

La siguiente línea contiene los $N$ enteros $A_1,A_2,\ldots,A_N$ en orden y separados por espacios.

Salida

En la primera línea, imprime el mínimo número de torres que Sanghun puede construir eligiendo adecuadamente cómo apilar.

Ejemplos

Entrada 1

4
3 3 5 4

Salida 1

2

Entrada 2

2
3 4

Salida 2

1

Entrada 3

5
1 1 6 1 1

Salida 3

3

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.