A tarefa
Dado o conjunto
e um inteiro
encontre o enésimo subconjunto.
Entrada / Saída
N é dado como um número inteiro não assinado em stdin. Você deve imprimir o subconjunto Nth em um formato adequado para o seu idioma (pode incluir [1,2,3], {1,2,3}, [1, 2, 3], 1 2 3, 1,2,3etc. durante o tempo que é uma legível texto formato).
Um pouco sobre subconjuntos
Há um relacionamento entre subconjuntos e números na base dois. Cada dígito
especifica se o i- ésimo elemento do conjunto está dentro do subconjunto. Por exemplo, 00000000 seria o conjunto vazio e 10000001 é o subconjunto que contém (o último e o primeiro elemento). Você obtém o enésimo subconjunto convertendo o número na base 2 e, em seguida, o subconjunto inclui todos os elementos em que . O terceiro subconjunto (3 = 00000011) contém assim . O dígito mais à direita é o número 0. Está tudo bem para imprimir . O conjunto não precisa ser classificado.[1,8][1,2][2,1]
Adendos:
Sim, o conjunto está fixo em 1..8. O aparelho não faz parte da entrada. A entrada é apenas N .
Sim, você pode usar formulários de entrada alternativos.
Todas as saídas esperadas para todos os N : https://tio.run/##SyotykktLixN/f/fyNS02qIoP8soJd1CwSAg2kY32LPWPaoqs7jg/38A
"123"seria inequívoca. Isso é válido?
1para8, ou é um conjunto?