Una lista de números se llama monotónicamente creciente (o no decreciente) si cada elemento es mayor o igual al elemento anterior.
Por ejemplo, 1, 1, 2, 4, 5, 5, 5, 8, 10, 11, 14, 14
está aumentando monotónicamente.
Dada una lista monótonamente creciente de enteros positivos que tiene un número arbitrario de puntos vacíos denotados por ?
, complete los espacios vacíos con enteros positivos de modo que haya tantos enteros únicos como sea posible presentes en la lista, pero sigue siendo monotónicamente creciente.
Puede haber múltiples formas de lograr esto. Cualquiera es valido.
Salida de la lista resultante.
Por ejemplo , si la entrada es
?, 1, ?, 1, 2, ?, 4, 5, 5, 5, ?, ?, ?, ?, 8, 10, 11, ?, 14, 14, ?, ?
se garantiza que sin los espacios vacíos la lista aumentará monotónicamente
1, 1, 2, 4, 5, 5, 5, 8, 10, 11, 14, 14
y su tarea es asignar números enteros positivos a cada uno
?
para maximizar el número de números enteros distintos en la lista mientras se mantiene sin disminución.Una tarea que no es válida es
1, 1, 1, 1, 2, 3, 4, 5, 5, 5, 5, 5, 5, 5, 8, 10, 11, 14, 14, 14, 14, 14
porque, aunque no es decreciente, solo tiene un número entero más que la entrada, a saber
3
.En este ejemplo, es posible insertar seis enteros positivos únicos y mantener la lista no decreciente.
Un par de formas posibles son:1, 1, 1, 1, 2, 3, 4, 5, 5, 5, 6, 7, 8, 8, 8, 10, 11, 12, 14, 14, 15, 16 1, 1, 1, 1, 2, 3, 4, 5, 5, 5, 5, 6, 6, 7, 8, 10, 11, 13, 14, 14, 20, 200
Cualquiera de estos (y muchos otros) sería una salida válida.
Todos los espacios vacíos deben llenarse.
No hay límite superior en los enteros que se pueden insertar. Está bien si se imprimen enteros muy grandes en notación científica.
El cero no es un entero positivo y nunca debe insertarse.
En lugar de ?
que puede utilizar cualquier valor constante que no es un entero positivo, como por ejemplo 0
, -1
, null
, False
, o ""
.
El código más corto en bytes gana.
Más ejemplos
[input]
[one possible output] (a "*" means it is the only possible output)
2, 4, 10
2, 4, 10 *
1, ?, 3
1, 2, 3 *
1, ?, 4
1, 2, 4
{empty list}
{empty list} *
8
8 *
?
42
?, ?, ?
271, 828, 1729
?, 1
1, 1 *
?, 2
1, 2 *
?, 3
1, 3
45, ?
45, 314159265359
1, ?, ?, ?, 1
1, 1, 1, 1, 1 *
3, ?, ?, ?, ?, 30
3, 7, 10, 23, 29, 30
1, ?, 2, ?, 3, ?, 4
1, 1, 2, 3, 3, 3, 4
1, ?, 3, ?, 5, ?, 7
1, 2, 3, 4, 5, 6, 7 *
1, ?, 3, ?, 5, ?, ?, 7
1, 2, 3, 4, 5, 6, 7, 7
1, ?, ?, ?, ?, 2, ?, ?, ?, ?, 4, ?, 4, ?, ?, 6
1, 1, 1, 1, 1, 2, 3, 4, 4, 4, 4, 4, 4, 5, 6, 6
98, ?, ?, ?, 102, ?, 104
98, 99, 100, 101, 102, 103, 104 *