#DX0009. 数位的关系

数位的关系

题目描述

对于一个十进制非负整数 nn,我们可以按照从高位到低位将其写成一个由数位 00 ~ 99 构成的字符串 S(n)S(n)(不含前导 00 )。

称一个仅由 <> 组成的串为关系串。对于一个长度为 kk 的关系串 R=r1r2...rkR=r_1r_2...r_k 和一个长度为 k+1k+1 的字符串 S=s1s2...sk+1S=s_1s_2...s_{k+1},如果任意 1ik1\le i \le k,都有关系 ri(si,si+1)r_i(s_i,s_{i+1}) 成立,则称字符串 SS 满足关系串 RR 的限制。

其中关系 ri(si,si+1)r_i(s_i,s_{i+1}) 成立只有两种情况,ri=r_i = <si<si+1s_i \lt s_{i+1} 或者 ri=r_i= >si>si+1s_i \gt s_{i+1},比较按照字典序顺序。

现在定义 f(n,R)f(n,R) 表示 S(n)S(n) 中有多少个子序列满足关系串 RR 的限制。给定 l,r,Rl,r,R,求:

(n=lrf(n,R))mod998244353\Biggl(\sum_{n=l}^rf(n,R)\Biggr)\mod 998244353

其中一个字符串的子序列定义为从原字符串中删去若干个(可以不删或删空)字符得到的新字符串。

输入格式

本题单个测试点内包含多组测试数据。

第一行一个整数 TT1T101\le T\le 10),表示数据组数。

对于每组数据,第一行两个整数 l,rl,r1lr<105001\le l \le r \lt 10^{500}),意义如题。

第二行一个关系串 RR1R5001\le \vert R\vert \le 500),意义如题。

输出格式

对于每组数据输出 TT 行,每行一个整数表示答案。

输入样例

5
12435 12435
<<
114514 114514
<><
1919810 1919810
<><>
1234 4321
<>
114514 1919810
<>>

输出样例

7
5
5
4628
4377883