Олимпиадный тренинг

Задача . F. Задачи для Codeforces


XYMXYM и CQXYM готовят \(n\) задач для Codeforces. Сложность задачи \(i\) будет равна целому числу \(a_i\), где \(a_i \geq 0\). Сложности задач должны удовлетворять условиям: \(a_i+a_{i+1}<m\) (\(1 \leq i < n\)), а также \(a_1+a_n<m\), где \(m\) — фиксированное целое число. XYMXYM хочет узнать, сколько существует возможных последовательностей сложности задач по модулю \(998\,244\,353\).

Два варианта распределения сложностей \(a\) и \(b\) различны, если существует такое \(i\) (\(1 \leq i \leq n\)), что \(a_i \neq b_i\).

Входные данные

Единственная строка входных данных содержит два целых числа \(n\) и \(m\) (\(2 \leq n \leq 50\,000\), \(1 \leq m \leq 10^9\)).

Выходные данные

Выведите одно целое число — ответ на задачу.

Примечание

В первом примере допустимые распределения сложностей \(a\): \([0,0,0]\), \([0,0,1]\), \([0,1,0]\), \([1,0,0]\).

\([1,0,1]\) некорректно, так как \(a_1+a_n \geq m\).


Примеры
Входные данныеВыходные данные
1 3 2
4
2 5 9
8105
3 21038 3942834
338529212

time 8000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя