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

Задача . E. Посчитайте блоки


Вы выписали все целые числа от \(0\) до \(10^n - 1\), добавляя к ним ведущие нули так, чтобы их длины были равны \(n\). Например, если \(n = 3\), то вы выпишете следующие числа: 000, 001, ..., 998, 999.

Назовем блоком в числе \(x\) последовательный отрезок одинаковых цифр, который не может быть расширен ни влево, ни вправо.

Например, в числе \(00027734000\) есть три блока длины \(1\), один блок длины \(2\) и два блока длины \(3\).

Для всех чисел \(i\) от \(1\) до \(n\) посчитайте суммарное количество блоков длины \(i\) среди выписанных вами чисел.

Так как эти числа могут быть слишком большими, выведите их по модулю \(998244353\).

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

В единственной строке содержится число \(n\) (\(1 \le n \le 2 \cdot 10^5\)).

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

В единственной строке выведите \(n\) чисел. \(i\)-е число равно количеству блоков длины \(i\) среди выписанных вами чисел.

Так как эти числа могут быть слишком большими, выведите их по модулю \(998244353\).


Примеры
Входные данныеВыходные данные
1 1
10
2 2
180 10

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

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