A93032.「SNOI2022」数位

NOI/NOI+/CTSC

官方

通过率:0%

时间限制:6.00s

内存限制:1024MB

题目描述

小 S 是一个喜欢数数的女孩子。

有一天,她在睡前躺在床上数数,当她数到 977431977431 的时候,她终于困了,并且决定睡觉。但此时她突然发现这个数字的各位数码是单调不增的!她觉得这相当有趣,于是她又睡不着了。

她想知道有多少个数在 L,RL, R 之间,并且它的各位数码是单调不增的。但这个问题太无聊了。

她又想知道有多少数对 (a,b)(a, b)L,RL, R 之间,并且 (a+b)(a + b) 的各位数码是单调不增的。但这个问题也太无聊了。

终于,她想到了一个有趣一些的问题:

给定整数 L,R,kL, R, k,求有多少个 kk 维向量 (a1,a2,...,ak)(a_1, a_2, ..., a_k) 满足 (a1+a2+...+ak)(a_1 + a_2 + ... + a_k) 的数码是单调不增的,并且 i[1,k],LaiR\forall i \in [1, k], L \leq a_i \leq R

她不会了。

由于答案可能很大,请你输出它对 998244353998244353 取模的结果。

输入格式

输入包含三行,第一行包含一个正整数 LL,第二行包含一个正整数 RR,第三行包含一个正整数 kk,具体意义见「题目描述」。

输出格式

输出一行一个非负整数,表示满足上述要求的 kk 维向量 (a1,a2,,ak)(a_1, a_2, \ldots , a_k) 的个数对 998244353998244353 取模的值。

输入输出样例

  • 输入#1

    1
    100
    2
    

    输出#1

    3728
    
  • 输入#2

    19260817
    1000000000
    3
    

    输出#2

    28745082
    
  • 输入#3

    114514233
    1919810233
    10
    

    输出#3

    135934411
    

说明/提示

对于全部数据,1LR<101000,1k501\le L\le R< 10^{1000},1\le k\le 50

具体的数据规模与约定见下表。

测试点编号 RR kk
11 <106< 10^6 11
22 <106< 10^6 1010
33 <106< 10^6 2020
44 <106< 10^6 3030
55 <106< 10^6 5050
66 <1017< 10^{17} 1010
77 <1017< 10^{17} 1010
88 <1017< 10^{17} 2020
99 <1017< 10^{17} 3030
1010 <1017< 10^{17} 5050
1111 <1050< 10^{50} 22
1212 <1050< 10^{50} 1010
1313 <10100< 10^{100} 22
1414 <10100< 10^{100} 33
1515 <10100< 10^{100} 1010
1616 <10200< 10^{200} 33
1717 <10200< 10^{200} 1010
1818 <10300< 10^{300} 1010
1919 <10300< 10^{300} 1010
2020 <10300< 10^{300} 2020
2121 <10500< 10^{500} 1010
2222 <10500< 10^{500} 2020
2323 <101000< 10^{1000} 3030
2424 <101000< 10^{1000} 5050
2525 <101000< 10^{1000} 5050
首页