Expedición al Evereth

Tiempo límite 0,5 s
Memoria límite 1 GB
Casos de prueba 147
Enviar solución

Puntos: 1

Tipo de problema
Lenguajes permitidos
C, C++, Java, Python, Rust

Una montaña tiene \(N\) estaciones numeradas de \(1\) a \(N\) de menor a mayor altura. Un itinerario visita cada estación exactamente una vez, primero subiendo y después bajando: es una permutación de \(1, \dots, N\) que crece hasta \(N\) y luego decrece (también vale solo subir o solo bajar).

Se da un itinerario con algunas posiciones ilegibles (marcadas con \(0\)). Complétalo para que sea un itinerario válido que coincida con las posiciones legibles, o indica que no se puede.

Entrada

La primera línea tiene un entero \(N\) \((1 \le N \le 10^5)\).

La segunda línea tiene \(N\) enteros \(A_1, \dots, A_N\) \((0 \le A_i \le N)\); \(A_i = 0\) indica una posición ilegible. Los valores legibles son todos distintos y hay al menos una posición ilegible.

Salida

Una línea con \(N\) enteros: un itinerario válido que coincide con \(A\) en todas las posiciones legibles. Si hay varios, cualquiera es aceptado. Si no existe, una línea con el carácter *.

Ejemplo 1

Entrada

5
3 0 5 0 0

Salida

3 4 5 2 1

Ejemplo 2

Entrada

5
4 2 0 0 1

Salida

*

Ejemplo 3

Entrada

5
0 0 0 0 0

Salida

5 4 3 2 1

Regional Latinoamericana 2024 del ICPC, problema E («Evereth Expedition»). Versión en español redactada para este juez; el enunciado oficial, en inglés, está aquí abajo.

Enunciado oficial en inglés (PDF)

Tu navegador no muestra el PDF aquí. Ábrelo en otra pestaña.

Abrir el enunciado oficial en otra pestaña


Comentarios

No hay comentarios por el momento.