#AT2063. C - digitnum
C - digitnum
当前没有测试数据。
C - 数字个数
分数:$300$ 分
问题描述
给定一个整数 $N$,解决以下问题。
定义 $f(x)=$ 与 $x$ 有相同位数的小于等于 $x$ 的正整数的个数。
计算 $f(1)+f(2)+\dots+f(N)$ 模 $998244353$。
约束条件
- $N$ 是一个整数。
- $1 \le N < 10^{18}$
输入
从标准输入读入以下格式的数据:
输出
输出一个整数,表示答案。
16
73
- 对于一个介于 $1$ 和 $9$ 之间的正整数 $x$,与 $x$ 有相同位数的小于等于 $x$ 的正整数为 $1,2,\dots,x$。
- 因此,$f(1)=1,f(2)=2,...,f(9)=9$。
- 对于一个介于 $10$ 和 $16$ 之间的正整数 $x$,与 $x$ 有相同位数的小于等于 $x$ 的正整数为 $10,11,\dots,x$。
- 因此,$f(10)=1,f(11)=2,...,f(16)=7$。
最终答案为 $73$。
238
13870
999999999999999999
762062362
计算结果需对 $998244353$ 取模。