Expedición al Evereth
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.
Comentarios