Entrada
Dos listas A
y B
de enteros no negativos.
Salida
Ya sea 1
, 0
o -1
, dependiendo de si A
es mayor, igual o menor que B
con respecto al ordenamiento lexicográfico retorcido como se define a continuación. Si lo desea, puede reemplazarlo 1
, 0
y -1
con otros tres valores constantes.
El ordenamiento lexicográfico retorcido es como el ordenamiento lexicográfico ordinario, en el que compara las listas elemento por elemento, y decide su orden en el primer índice diferente. Sin embargo, en la versión retorcida usamos un orden diferente para enteros no negativos en cada índice. Es decir, en cada índice i
(la indexación comienza desde 1
), el orden de los primeros i
enteros no negativos (de 0
a i-1
) se invierte y se mueven por encima de todos los demás números. Además, el "elemento faltante" que significa que una lista es más corta que la otra se mueve directamente debajo i-1
. Visualmente, el orden en el índice i
es
i < i+1 < i+2 < i+3 < ... < [missing element] < i-1 < i-2 < i-3 < ... < 2 < 1 < 0
Tenga en cuenta que el primero ...
denota infinitos números. Esto significa que las siguientes listas están en orden ascendente con respecto al ordenamiento lexicográfico retorcido:
[3,2,3,4]
[3,2,3,5]
[3,2,3,10]
[3,2,3,1341]
[3,2,3]
[3,2,3,3]
[3,2,3,2]
[3,2,3,1]
[3,2,3,0]
Reglas
Puedes dar un programa completo o una función. El conteo de bytes más bajo gana, y las lagunas estándar no se permiten.
Casos de prueba
Output 1:
[0] []
[] [1]
[] [1,2,1,2]
[2,1] [1,1]
[0,1,2] [0,2,1]
[3,0] [3,1]
[3,1] [3]
[2] [2,2]
[2] [2,23]
[2,24] [2,23]
[2,1] [2,23]
Output 0:
[] []
[0] [0]
[1,1] [1,1]
[2,1,2] [2,1,2]
Output -1:
[1,2,1,1,2] [1,2,1,1,1]
[1,2,1,1,5] [1,2,1,1,4]
[1,2,1,1,5] [1,2,1,1]
[1,2,1] [1,2,1,1]
[1,2,1,1,5] [1,2,1,1,6]
[1,2,1,1,6] [1,2,1,1,7]