Sua tarefa é pegar um n
elemento n
de entrada e saída da Rummy Sequence, uma sequência que eu criei (ver o OEIS não ajudará).
Definição
Cada elemento da sequência Rummy é um conjunto de valores de verdade ou falsey. Ex [true, false]
. : .
As etapas para produzir um membro da sequência Rummy são bastante simples:
- Comece com o primeiro índice
[]
(este é o elemento 0). - Defina a falsey mais à esquerda como verdade. Se não houver falseys a serem alterados, aumente o comprimento da lista em 1 e defina todos os membros da nova lista como falsey.
- Repita a etapa 2 até alcançar o elemento
n
.
Exemplo
Vamos definir nossa função como rummy(int n)
(o material {}
é um passo dado para chegar à resposta):
>>> rummy(5)
{[]}
{[false]}
{[true]}
{[false, false]}
{[true, false]}
[true, true]
Regras
- Aplicam-se brechas padrão.
- Deve funcionar para as entradas 0 através do limite numérico superior do seu idioma.
- Você pode enviar da maneira que achar melhor, desde que fique claro que a saída é um conjunto de verdade / falso.
Curiosidades
Eu chamo isso de "Sequência Rummy" porque, começando no índice 2, define os conjuntos que você precisa estabelecer em cada rodada do Rummy Progressivo , onde a falsey é um livro e a verdade é uma corrida.
Casos de teste
>>> rummy(0)
[]
>>> rummy(1)
[false]
>>> rummy(6)
[false, false, false]
>>> rummy(20)
[true, true, true, true, true]
>>> rummy(1000)
[true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false]
1
a 11
, você recebe o que 000
não 100
. ; P
1*0*
.