U283429 一起数奇数!

题目背景

没有题目背景,就是一道简单的数位dp练习题。 同时本题也是 **2020年清华考研第一题的加强版** 。

题目描述

给定正整数 $n$ ,求解 $F(n)$。其中 $F(n)$ 表示**在十进制之下**,所有**小于等于 $ n $ 的正整数的各数位当中,奇数出现次数的和。** 由于这个数字可能大的离谱,所以我们只需要输出他对质数 $998244353$ 取模的结果即可。

输入格式

本题的每一个测试点均为**多组数据输入,请采用文件终止符`EOF`判断结尾。** 每组数据 $1$ 行,包含一个正整数 $n$ 。 每个测试点的数据组数不超过 $100$ 。

输出格式

对于每组数据,输出一行,为 $F(n)$ 对 $998244353$ 取模的值

说明/提示

**以第二组数据 $11$ 为例。** 在 $1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11$ 当中 - $1$ 在数字 $1$ 和 $10$ 中各出现一次,在数字 $11$ 中出现两次 - $3$ 在数字 $3$ 中出现一次 - $5$ 在数字 $5$ 中出现一次 - $7$ 在数字 $7$ 中出现一次 - $9$ 在数字 $9$ 中出现一次 各自数位当中,奇数出现次数的总和为 $8$ , 所以输出的值为 $ F(11) \% 998244353 = 8 $。 ## 数据范围 对于所有的数据,保证每一个 $n$ 均为合法的正整数形式。 对于总计 $5\%$ 的测试点,保证 $n \le 10^ 4$。 对于总计 $15\%$ 的测试点,保证 $n\le 10^6$。 对于总计 $30\%$ 的测试点,保证 $n \le 10^{12}$。 对于总计 $50\%$ 的测试点,保证 $n\le 10^{19}$。 **对于 $100\%$ 的测试点,保证 $n \le 10^{100}$。**