O jogo de dados Mia apresenta uma ordem não trivial de conjuntos de tamanho dois:
{3,1} < {3,2} < {4,1} < {4,2} < {4,3} < {5,1} < {5,4} < {6,1} < {6,5} < {1,1} < {2,2} < {6,6} < {1,2}
Em geral, a ordem dentro de uma tupla não importa {x,y}={y,x},
{1,2}é maior que qualquer outra coisa, Pares são maiores que não pares e o valor numérico decide em caso de empate.
Agora, suponha que você queira usar ndados. Além disso, os dados têm mrostos.
Exemplo:
{1,5,3,4} < {1,2,6,3}desde 5431 <6321{1,2,3,5} < {1,1,5,6} < {1,1,5,5}, {1,1,6,6} < {1,1,1,3} < {2,2,2,3} < {1,1,1,1} < {1,2,3,4}{2,2,5} < {1,1,6}uma vez que os dois conjuntos têm cada par e 611> 522
Em poucas palavras, {1, ..., n} é maior do que qualquer outra coisa. Vamos p > q, então p-do-tipo é maior que q-do-tipo. Em caso de empate, o segundo (, terceiro, ...) - o maior do gênero vence. Finalmente, se nenhuma decisão puder ser tomada ainda, o maior valor numérico vence. O valor numérico de um conjunto é o maior número inteiro que você pode construir a partir dos números disponíveis no conjunto, usando concatenação. Exemplo:
{2,5,4,3}torna-se 5432{4,11,3,4}torna-se B443 (dados com 6 faces são permitidos, B = 11)
Sua tarefa é escrever o menor programa possível (ou seja, função) no idioma de sua escolha, que, considerando dois contêineres (lista, matriz, conjunto, ...) retorne se o primeiro ou o segundo vence.
Nota: você pode assumir que os dois contêineres têm o mesmo comprimento e contêm apenas números inteiros positivos, mas nada mais. Especialmente eles podem não ser classificados. O valor de retorno pode ser qualquer coisa, por exemplo, {-1, 0, 1} para {primeiras vitórias, empate, segundas vitórias}.
{1,1,6},{2,2,5}? Você compara o valor numérico do maior p-de-um-tipo ou de qualquer dado?