Aufgabe
Suchen Sie den Satz von Zahlen, sodass die Binärdarstellung zwei oder mehr 1
durch mindestens einen getrennte Reihen enthält 0
.
Zum Beispiel für die Zahlen, die 4 Bits lang sind:
0 0000 (no ones)
1 0001 (only one run)
2 0010 (only one run)
3 0011 (only one run)
4 0100 (only one run)
5 0101 Valid
6 0110 (only one run)
7 0111 (only one run)
8 1000 (only one run)
9 1001 Valid
10 1010 Valid
11 1011 Valid
12 1100 (only one run)
13 1101 Valid
14 1110 (only one run)
15 1111 (only one run)
Eingang
Eine Ganzzahl, die der Anwendung über eine Eingabe im Bereich bereitgestellt wird 3 .. 32
. Dies stellt die maximale Anzahl von Bits dar, bis zu der gezählt werden kann.
Die Eingabe von n
gibt an, dass die Zahlen überprüft werden müssen.0 .. 2n-1
Ausgabe
Eine begrenzte Liste (Ihrer Wahl) aller Nummern, die die Kriterien erfüllen. Die Nummern sind in numerischer Reihenfolge anzugeben. Ein zusätzliches abschließendes Trennzeichen ist zulässig. Datenstrukturumschließungen (z. B. []
und ähnliche) sind ebenfalls zulässig.
Beispiel
Input: 3
Output: 5
Input: 4
Output: 5, 9, 10, 11, 13
Input: 5
Output: 5, 9, 10, 11, 13, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 29
Das ist Code-Golf - die Antwort mit der geringsten Anzahl von Bytes gewinnt.
\n
abgrenzt und ein \n
in die letzte Zeile setzt, dann sollte ,
ein ,
Abschluß auch akzeptabel sein. Aktualisiert.
[1, 2, 3]
?