Neste desafio do código-golfe , você deve produzir uma arte ascii de um dado aleatório.
como isso:
________
/\ \
/ \ 6 \
{ 4 }-------}
\ / 5 /
\/_______/
Observe que:
________
/\ \
/ \ 3 \
{ 4 }-------}
\ / 5 /
\/_______/
é saída inválida, porque esse não é um resultado possível em um dado
Existem 6(faces that could be up)*4(faces that could be the left face after the top is determined)*1(faces that could be the right face after the other two are determined)
= 24 possibilidades de rolagens.
Seu programa deve gerar um desses rolos de matriz na forma de uma arte ascii (modelada como a abaixo, com os xy e zs substituídos por números) como acima, com cada saída com probabilidade> 0 de ocorrer, mas as probabilidades não tem que ser par (eles podem ser dados de truque, diferente da vida real). Seu programa não pode gerar um rolo de matriz inválido ou um rolo de matriz não. Seu programa deve ter uma probabilidade de 1 de gerar um rolo válido
Observe que seu dado não precisa necessariamente ser um dado destro, como mostrado na primeira imagem. (destro e canhoto descrevem a rede do dado)
right-handed die
________
/\ \ net
/ \ z \ _|4|_ _
{ x }-------} |6|2|1|5|
\ / y / |3|
\/_______/
left handed die
________
/\ \ net
/ \ y \ _|3|_ _
{ x }-------} |6|2|1|5|
\ / z / |4|
\/_______/
Se o seu dado for canhoto, o resultado é válido, mas não se o seu dado for destro:
________
/\ \
/ \ 2 \
{ 1 }-------}
\ / 3 /
\/_______/
Embora você possa escolher canhoto ou destro, seu dado deve ser consistente: ele não pode mudar da esquerda para a direita ou vice-versa
A seguir, é apresentada uma lista de saídas válidas para o dado. Consulte as figuras acima para posições de XYZ:
X-Y-Z
-----
5-4-1
1-5-4
4-1-5
5-6-4
4-5-6
6-4-5
5-3-6
6-5-3
3-6-5
5-1-3
3-5-1
1-3-5
2-6-3
3-2-6
6-3-2
2-4-6
6-2-4
4-6-2
2-1-4
4-2-1
1-4-2
2-3-1
1-2-3
3-1-2
novamente, isso é código-golfe , então menos bytes é melhor