Introdução
Suponha que eu tenha uma lista de números inteiros, digamos L = [-1,2,2,1,2,7,1,4] . Eu gosto de ter equilíbrio na minha vida, então estou feliz em ver que tem tantos elementos estranhos quanto pares. Além disso, ele também possui um número igual de elementos em todas as classes de módulo de 3 e possui elementos em:
[-1,2,2,1,2,7,1,4]
0 mod 3:
1 mod 3: 1 7 1 4
2 mod 3: -1 2 2 2
Infelizmente, para as classes de módulo 4, isso não se aplica mais. Em geral, dizemos que uma lista não vazia é o módulo N balanceado se tiver um número igual de elementos em todas as classes de módulo de N para as quais esse número não é 0. A lista L acima é o módulo balanceado 2 e 3, mas o módulo desbalanceado 4)
A tarefa
Sua entrada é uma lista não vazia L de números inteiros, obtidos em qualquer formato razoável. Sua saída é a lista desses números inteiros N ≥ 2, de modo que L é um módulo N balanceado , novamente em qualquer formato razoável. A ordem da saída não importa, mas não deve conter duplicatas.
É garantido que haja apenas muitos números finitos na saída, o que significa precisamente que nem todos os elementos de L ocorrem um número igual de vezes nela. Exemplos de entradas inválidas são [3] , [1,2] e [0,4,4,0,3,3] . Observe que o maior número na saída é no máximo max (L) - min (L) .
A contagem de bytes mais baixa em cada idioma vence e aplicam -se regras padrão de código de golfe .
Casos de teste
[1,1,2] -> []
[1,1,5] -> [2,4]
[1,1,24] -> [23]
[1,2,3,2] -> [2]
[12,12,-4,20] -> [2,3,4,6,8,12,24]
[1,1,12,12,-3,7] -> [3,10]
[-1,2,2,1,2,7,1,4] -> [2,3]
[4,-17,-14,-18,-18,3,5,8] -> []
[-18,0,-6,20,-13,-13,-19,13] -> [2,4,19]
[-11,-19,-19,3,10,-17,13,7,-5,16,-20,20] -> []
[3,0,1,5,3,-6,-16,-20,10,-6,-11,11] -> [2,4]
[-18,-20,14,13,12,-3,14,6,7,-19,17,19] -> [2,3]
[-16,-9,6,13,0,-17,-5,1,-12,-4,-16,-4] -> [3,9]
[-97,-144,3,53,73,23,37,81,-104,41,-125,70,0,111,-88,-2,25,-112,54,-76,136,-39,-138,22,56,-137,-40,41,-141,-126] -> [2,3,6]