Você recebeu N pilhas de moedas. Você decidiu dividir cada uma dessas pilhas B 1 , B 2 , ..., B N entre grupos de pessoas separados. A quantidade de pessoas que recebem moedas deve ser um número primo e a quantidade de dinheiro dada a cada pessoa deve ser diferente em cada pilha.
Entrada: N, B 1 , B 2 , ..., B N (A quantidade de moedas em cada pilha individual).
Saída: NP 1 , NP 2 , ..., NP N sendo NP o número de pessoas (número primo) que recebem as moedas. Se isso for impossível, em seguida, produzir algum resultado inatingível (como 0
, -1
, None
, []
, ou "impossible"
) ou gerar um erro.
Exemplo:
3
7 8 9
Resultado: 7 2 3
Como 7 é o único número primo que pode dividir 7 igualmente, o mesmo para 8 e 2 e 9 e 3. Além disso, observe que (7/7 = 1) ≠ (8/2 = 4) ≠ (9/3 = 3 )
N
é uma entrada redundante, podemos deixar de tomá-la?0
, uma lista vazia, uma string como "impossível" ou gerar um erro) para casos impossíveis? (Na verdade, eu recomendaria apenas entradas válidas, ou permitir comportamentos indefinidos nesses casos, mas depende de você.) #[7,8,8]
que seria impossível (uma vez usando2
para ambos os8
resultados em dois4
s.) Além disso, se a entrada fosse dizer[7,30,30]
, em seguida,[7,2,2]
seria inválida, mas[7,2,3]
e[7,3,2]
entre outros iria funcionar.Respostas:
05AB1E , 13 bytes
Experimente online!
Um porto da minha resposta Pyth.
Ò
fica o fato de primos Ò rs de cada um..»
dobras um comando dyadic,â
(c â rtesi â n produto) entre cada dois elementos na lista da direita para a esquerda, direita / esquerda opostas operandos.€˜
nivela € ach.ʒ...}
Filt ʒ rs aqueles que satisfazem a seguinte condição:÷
divisão inteira pareada com a entrada.D
D uplicate (empurra duas cópias do item à pilha).Ù
remove elementos duplicados, mantendo uma Ù niq Ù e ocorrência de cada elemento.Q
verifica e Q ualidade.θ
obtém o último elemento.fonte
Geléia ,
1514 bytesUm programa completo que aceita um argumento, uma lista de números e imprime uma representação de outra lista de números, ou
0
se a tarefa é impossível.Experimente online!
Como?
fonte
µ⁼Q
que funcionaria como uma alternativa à peneira distinta, mas bom trabalho!Pitão , 15 bytes
Experimente aqui!
Como?
fonte