Задача "пароль" от Ответа на вызов 2019 - PullRequest
1 голос
/ 06 марта 2020

Оператор задачи просит найти, сколько строк длины N, образованных только 1 и 0, существует так, что они не содержат заданную подстроку (только с 1 и 0) длины M

f1 = open("input.txt", "r")
f2 = open("output.txt", "a+")

T = int(f1.readline())

for n in range(1, T+1):
  N, M = (int(x) for x in f1.readline().split())
  sub = f1.readline()

  c = 0

  for number in range(0, 2**(N)):
    number = bin(number)
    number = number[2:]

    while len(number) != N:
      number = "0"+number

    if sub not in number:
      c += 1

  f2.write(f"Case #{n}: {c}\n")

f1.close()
f2.close()

Это моя попытка, но это просто грубая сила. Первая часть просто разбирает ввод

...