Entrada
Duas listas A
e B
números inteiros não negativos.
Resultado
Qualquer um 1
, 0
ou -1
, dependendo se A
é maior que, igual a, ou menor do que B
no que diz respeito à ordem léxicografica torcido , tal como definido abaixo. Se você quiser, você pode substituir 1
, 0
e -1
com quaisquer outros três valores constantes.
A ordem lexicográfica distorcida é como a ordem lexicográfica comum, na qual você compara as listas elemento por elemento e decide a ordem delas no primeiro índice diferente. No entanto, na versão distorcida, usamos uma ordem diferente para números inteiros não negativos em cada índice. Ou seja, em todo índice i
(a indexação começa em 1
), a ordem dos primeiros i
números inteiros não negativos (de 0
para i-1
) é revertida e eles são movidos acima de todos os outros números. Além disso, o "elemento ausente" que significa que uma lista é mais curta que a outra é movida diretamente abaixo i-1
. Visualmente, a ordem no índice i
é
i < i+1 < i+2 < i+3 < ... < [missing element] < i-1 < i-2 < i-3 < ... < 2 < 1 < 0
Observe que o primeiro ...
denota infinitamente muitos números. Isso significa que as seguintes listas estão em ordem crescente em relação à ordem lexicográfica distorcida:
[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]
Regras
Você pode dar um programa completo ou uma função. A menor contagem de bytes vence e as brechas padrão não são permitidas.
Casos de teste
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]