Kotlin Heroes: Episode 6 |
---|
Закончено |
Задано целое число $$$n$$$ и последовательность $$$a$$$ из $$$n-1$$$ целых чисел: каждый элемент равен либо $$$0$$$, либо $$$1$$$.
Требуется построить такую строку длины $$$n$$$, что:
Будут заданы $$$q$$$ запросов вида:
После каждого запроса выведите количество различных строк, удовлетворяющих данным ограничениям, по модулю $$$998\,244\,353$$$.
В первой строке записаны два целых числа $$$n$$$ и $$$q$$$ ($$$2 \le n \le 10^5$$$; $$$1 \le q \le 10^5$$$) — длина строки и количество запросов.
Во второй строке записаны $$$n-1$$$ целых чисел $$$a_1, a_2, \dots, a_{n-1}$$$ ($$$a_i \in \{0, 1\}$$$) — ограничения на суффиксы строки.
В каждой из следующих $$$q$$$ строк задан запрос: одно целое число $$$i$$$ ($$$1 \le i \le n - 1$$$) — сменить значение $$$a_i$$$ на противоположное (если $$$a_i=0$$$, то установить $$$a_i$$$ в $$$1$$$, и наоборот).
После каждого запроса выведите количество различных строк, удовлетворяющих данным ограничениям, по модулю $$$998\,244\,353$$$.
2 2 0 1 1
6 10
3 4 0 0 1 2 1 2
20 10 14 20
10 10 0 0 0 1 1 1 0 1 0 4 1 8 4 2 9 5 6 6 8
1815 3201 2710 2776 2290 1644 2668 1271 2668 2436
$$$i$$$-й суффикс строки — это последовательная подстрока, которая начинается в $$$i$$$-й позиции и заканчивается в последней позиции.
Строка $$$a$$$ лексикографически меньше строки $$$b$$$, если и только если выполняется один из следующих пунктов:
Две строки $$$a$$$ и $$$b$$$ длины $$$n$$$ различаются, если существует такая позиция $$$i$$$, что $$$a_i \neq b_i$$$
Название |
---|