O triângulo de Pascal é gerado começando 1
e tendo cada linha formada a partir de adições sucessivas. Aqui, em vez disso, vamos formar um triângulo alternando multiplicação e adição.
Começamos a remar 1
com apenas um solitário 1
. Posteriormente, a adição é feita nas linhas ímpares e a multiplicação é feita nas linhas pares (indexadas 1). Ao executar a etapa de adição, assuma que os espaços fora do triângulo sejam preenchidos com 0
s. Ao executar a etapa de multiplicação, suponha que o exterior esteja preenchido com 1
s.
Aqui está o triângulo completo até 7 linhas. O *
ou +
à esquerda mostra qual etapa foi executada para gerar essa linha.
1 1
2 * 1 1
3 + 1 2 1
4 * 1 2 2 1
5 + 1 3 4 3 1
6 * 1 3 12 12 3 1
7 + 1 4 15 24 15 4 1
Desafio
Dada a entrada n
, imprima a n
linha th deste triângulo.
Regras
- Em vez disso, você pode optar por indexar 0, mas saiba que as linhas de adição e multiplicação devem ser invertidas, para que o mesmo triângulo seja gerado exatamente como acima. Por favor, indique no seu envio se você optar por fazer isso.
- Pode-se presumir que a entrada e a saída se encaixam no tipo inteiro nativo do seu idioma.
- A entrada e saída podem ser fornecidas em qualquer formato conveniente .
- Um programa completo ou uma função são aceitáveis. Se uma função, você pode retornar a saída em vez de imprimi-la.
- Se possível, inclua um link para um ambiente de teste on-line para que outras pessoas possam experimentar seu código!
- As brechas padrão são proibidas.
- Isso é código-golfe, portanto todas as regras usuais de golfe se aplicam e o código mais curto (em bytes) vence.
Exemplos
Mostrando dois exemplos possíveis de saída de muitos: uma lista ou uma sequência separada por espaço.
4
[1, 2, 2, 1]
8
"1 4 60 360 360 60 4 1"
n
quinta linha.