def generate_binary_strings(N):
# Общее количество строк длины N состоит из 2^N возможных комбинаций нулей и единиц
total_combinations = 2 ** N
# Генерация всех строк от 0 до 2^N-1 включительно в двоичном представлении с ведущими нулями
binary_strings = [bin(i)[2:].zfill(N) for i in range(total_combinations)]
# Сортировка строк лексикографически - хотя они уже в лексикографическом порядке по умолчанию
binary_strings.sort()
return binary_strings
# Входные данные
N = int(input("Введите число N (1 ≤ N ≤ 10): "))
# Вызов функции и вывод результата
if 1 <= N <= 10:
result = generate_binary_strings(N)
for binary_string in result:
print(binary_string)
else:
print("Число N должно быть в диапазоне от 1 до 10.")
выведите все строки длины N
из нулей и единиц в лексикографическом порядке.
Входные данные
Задано единственное число N
. (натуральное, 1≤N≤10
).
Выходные данные
Необходимо вывести все строки длины N
из нулей и единиц в лексикографическом порядке, по одной на строке.