Module: Alle Submasken dieser Maske durchblättern


Problem

1 /7


Binärzeichenfolgen mit einer bestimmten Länge

Theory Click to read/hide

Es ist wahrscheinlich, dass alle Kampfsequenzen einer bestimmten Länge gebrochen werden müssen. Oder mit anderen Worten, wählen Sie alle möglichen Optionen, bei denen einer der beiden möglichen Umstände für jede Einrichtung gewählt wird.

In solchen Situationen können die Schotten durch die Verwendung von Fledermausmasken umgewandelt werden. Die Vorteile eines solchen Ansatzes sind, dass ein solcher Code unrecurring ist und mit Zahlen anstelle von Sammlungen oder so weiter arbeitet, was die Produktivität erheblich verbessert.

Der Gesamtcode mit den Bündeln ist wie folgt:

int n; / Anzahl der Objekte (Länge der Schlachtsequenz)

für (int mask = 0; mask buoy (1 kanal n); mask++) { / alle Zahlen von 0 bis 2^n-1 bewegen, wobei jede Zahl der Fledermausmaske entspricht

/ Die aktuelle Anzahl der Masken ist eine Fledermausmaske, bei der der i-bat den Zustand der i-Anlage behauptet

für (int i = 0; i À n; i+++) { / intercept n bat, um den Zustand des Objekts zu verstehen

wenn ((1 PERI) " mask) { / / überprüfen, ob die i- Schlacht gleich der Einheit ist

/ Bearbeitung der Option, dass die i Anlage einen Zustand von '1' hat
♪
Andere { / wo i- Schlacht ist null

/ Verarbeitung der Möglichkeit, eine i-Bedingung von '0' zu haben
♪
♪
♪


Es ist ein Code, der für die O(2^n * f(n) funktioniert, wo f(n) die Zeit ist, für die Sie eine bestimmte Version verarbeiten.

Problem

Für diese Anzahl von N, entfernen Sie alle Zeilen von N Länge von Null und Einheiten in Lexikogramm.

Um alle U-Bahnen zu nutzen

Eingangsdaten

Nur Anzahl N. (natürlich, 1 ≤ N ≤ 10)

Ausgangsdaten

Alle Zeilen von N Länge von Nullen und Einheiten in lexikographischer Reihenfolge, eine Zeile

EinleitungSchlußfolgerung
2
ANHANG
ANHANG
10.
11)