Temirulan Mussayev
Задача №1.
Задача D. Чередующие тренировки
Ограничение по времени:
1 секунда
Ограничение по памяти:
256 мегабайт
Алан очень сильно любит решать задачи по программированию и играть шахматы. В обоих сферах он хочет преуспеть, стать легендарным гроссмейстером. Айдос как опытный тренер предложил ему у него потренироваться.
У Айдоса определенное расписание на каждый из следующих $n$ дней. В каждый из дней Айдос тренирует только один вид, либо программирование, либо шахматы. Алан хочет выбрать несколько подряд идущих дней для тренировки. Также Алан заметил, что если два дня подряд тренироваться в одной и той же сфере, то он устает, т.е. Алану надо чередовать шахматы и программирование. Помогите Алану выбрать максимальное количество подряд идущих дней так, чтобы он за этот период не устал тренироваться.
Формат входного файла
Первая строка входных данных содержит целое цисло $n$ ($1 <= n <= 2\cdot 10^5$) — количество тренировочных дней у Айдоса. Вторая строка содержит $n$ цифр $0$ или $1$ без пробелов — $i$-я цифра $0$ если в $i$-й день Айдос тренирует программирование, иначе Айдос тренирует шахматы.
Формат выходного файла
Выведите одно число — максимальное количество подряд идущих тренировочных дней для Алана.
Система оценки
В данной задаче 50 тестов, прохождение каждого теста оценивается в 2 балла:
Подзадача 1: 2 тестовых примера из условия
Подзадача 2: $n <= 3$. 13 тестов
Подзадача 3: $n <= 100$. 5 тестов
Подзадача 4: $n <= 5000$. 12 тестов
Подзадача 5: $n <= 200000$. 18 тестов
Примеры:
Вход 4 0 1010Ответ
4Вход
5 3 01011 1 3 2 5 4 5Ответ
3
Замечание
В первом тесте Алан может все дни тренироваться.
Во втором тесте Алан может тренироваться со 2-го по 4-й день: во 2-й день программирование, в 3-й день шахматы и в 4-й день программирование. Заметим, что первый, второй день Алан не может тренироваться, так как в эти дни только программирование и Алан сильно устанет.
(
Temirulan Mussayev
)
комментарий/решение(5) олимпиада
Задача №2.
Задача D. Чередующие тренировки
Ограничение по времени:
1 секунда
Ограничение по памяти:
256 мегабайт
Алан очень сильно любит решать задачи по программированию и играть шахматы. В обоих сферах он хочет преуспеть, стать легендарным гроссмейстером. Айдос как опытный тренер предложил ему у него потренироваться.
У Айдоса определенное расписание на каждый из следующих $n$ дней. В каждый из дней Айдос тренирует только один вид, либо программирование, либо шахматы. Алан хочет выбрать несколько подряд идущих дней для тренировки. Также Алан заметил, что если два дня подряд тренироваться в одной и той же сфере, то он устает, т.е. Алану надо чередовать шахматы и программирование. Помогите Алану выбрать максимальное количество подряд идущих дней так, чтобы он за этот период не устал тренироваться.
Формат входного файла
Первая строка входных данных содержит целое цисло $n$ ($1 <= n <= 2\cdot 10^5$) — количество тренировочных дней у Айдоса. Вторая строка содержит $n$ цифр $0$ или $1$ без пробелов — $i$-я цифра $0$ если в $i$-й день Айдос тренирует программирование, иначе Айдос тренирует шахматы.
Формат выходного файла
Выведите одно число — максимальное количество подряд идущих тренировочных дней для Алана.
Система оценки
В данной задаче 50 тестов, прохождение каждого теста оценивается в 2 балла:
Подзадача 1: 2 тестовых примера из условия
Подзадача 2: $n <= 3$. 13 тестов
Подзадача 3: $n <= 100$. 5 тестов
Подзадача 4: $n <= 5000$. 12 тестов
Подзадача 5: $n <= 200000$. 18 тестов
Примеры:
Вход 4 0 1010Ответ
4Вход
5 3 01011 1 3 2 5 4 5Ответ
3
Замечание
В первом тесте Алан может все дни тренироваться.
Во втором тесте Алан может тренироваться со 2-го по 4-й день: во 2-й день программирование, в 3-й день шахматы и в 4-й день программирование. Заметим, что первый, второй день Алан не может тренироваться, так как в эти дни только программирование и Алан сильно устанет.
(
Temirulan Mussayev
)
комментарий/решение(5) олимпиада