Java: Gerador de combinações de true e false dando o número N;
Liguei para simplificar a tarefa, tanto quanto possível, para que eu pudesse aplicá-lo ao meu algoritmo.
E aqui está o desafio para matemáticos e programadores:
Eu preciso criar um método onde eu passe o parâmetro int n:
public void optionality_generator(int n){
//some kind of loops, or recursions...to make it workable
System.out.println("current combination: ...");
}
A saída deve mostrar todas as combinações possíveis de true e false.
Aqui está exemplos onde N = 1; N = 2; N = 3; N = 4; N = 5 em que x = falso e 0 = verdadeiro; Por favor, note que as linhas de quebra vazias são apenas para você reconhecer mais facilmente os padrões. Espero que tenha incluído todas as combinações possíveis:
Combination of 1:
0
x
Combination of 2:
00
x0
0x
xx
Combination of 3:
000
X00
0X0
00X
XX0
0XX
XXX
Combination of 4:
0000
X000
0X00
00X0
000X
XX00
X0X0
X00X
0XX0
0X0X
00XX
XXX0
XX0X
X0XX
0XXX
XXXX
Combination of 5:
00000
X0000
0X000
00X00
000X0
0000X
XX000
X0X00
X00X0
X000X
X0X00
X00X0
X000X
0XX00
0X0X0
0X00X
00XX0
00X0X
000XX
XXX00
XX0X0
XX00X
X0XX0
X0X0X
X00XX
0XXX0
0XX0X
00XXX
XXXX0
XXX0X
XX0XX
X0XXX
0XXXX
XXXXX
Além disso, se você ver a saída, aqui está o padrão que eu reconheci, que todas as combinações são invertidas na metade (por exemplo, a primeira combinação é 00000, a última será XXXXX, segunda X0000, uma antes da última será 0XXXX, etc.) . Talvez, esse padrão ajude a tornar todo o algoritmo mais eficiente, não tendo certeza disso. Agradeço antecipadamente!