Supondo que eu tenha os valores A B C D E
e oito lugares 1 2 3 4 5 6 7 8
. Como posso obter todas as combinações possíveis impressas com repetições de duas e três vezes?
Exemplo:
1 2 3 4 5 6 7 8
_______________
A A B B C C D E
A B B C C D D E (and so on...)
A A A B B C D E
A B B B C C D E (and so on...)
Qual combinação é seguida por qual não é mais importante. Não deve haver nenhum valor ausente como AABBCCDD
(onde E
está faltando)
Uma abordagem grosseira com //
zsh
poderia ser:ksh93
bash
Onde usamos zsh-style
{A..E}
para gerar todas as 5 8 combinações deAAAAAAAA
toEEEEEEEE
, esed
remove aquelas que não contêmA
, ou não contêmB
,C
, ou maisD
deE
3 do mesmo caractere.Adicione
;s/./ &/2g
(GNUsed
) ou;s/./ &/g;s/ //
(qualquersed
) aosed
código para inserir espaços entre as letras.