Подотрезок
Ограничение по времени: 1
секунда
Ограничение по памяти: 256
мегабайт
Переполненные впечатлениями после фильма, вы вышли из кинотеатра. «Побег из матрицы» оставил очень много вопросов без ответа.
В самом конце фильма была показана битовая строка s
, состоящая из n
символов, каждый из которых был равен 0
или 1
. Играла напряжённая музыка, и Мёбиусу предстояло принять судьбоносное решение. Он должен был выбрать два индекса l
и r
, после чего инвертировать биты на подотрезке sl
, sl+1
, …
, sr
. Иными словами, на выбранном подотрезке Мёбиус должен был заменить каждый символ, равный 0
, на 1
и наоборот.
python
s = input() # ввод строки s
l = 0 # начальное значение левой границы подотрезка
r = len(s) - 1 # начальное значение правой границы подотрезка
while l < r:
if s[l] == '0':
s = s[:l] + '1' + s[l+1:] # замена символа на позиции l
else:
s = s[:l] + '0' + s[l+1:] # замена символа на позиции l
if s[r] == '0':
s = s[:r] + '1' + s[r+1:] # замена символа на позиции r
else:
s = s[:r] + '0' + s[r+1:] # замена символа на позиции r
l += 1 # увеличение левой границы
r -= 1 # уменьшение правой границы
print(s) # вывод результирующей строки
Таким образом, данный алгоритм проводит инверсию битов на заданном подотрезке в строке s и выводит полученный результат.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет