Ограничения: время – 250ms/500ms, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Дана бинарная строка `S` из `N` битов 0 и 1.
Разрешается применять к этой строке операцию "инверсии":
выбрать подстроку длиной ровно `K` битов и заменить в ней все 0 на 1, а 1 на 0.
Определите, какую лексиграфически наименьшую строку из строки `S` можно получить,
применяя операцию инверсии неограниченное количество раз.
Первая строка ввода содержит два целых числа `N` и `K` (`1 <= K <= N <= 100000`).
Вторая строка ввода содержит строку `S` из `N` символов 0 и 1.
Вывести лексиграфически наименьшую строку, полученную из `S`.
```sample Пример ввода 1
3 2
101
```
```sample Пример вывода 1
000
```
```sample Пример ввода 2
5 3
01010
```
```sample Пример вывода 2
00011
```
Пояснение к примеру 1: 1[01]->[11]0->000
Пояснение к примеру 2: 0[101]0->00[100]->00011