#P2162. 子串

子串

题目描述

给出一个字符串 SS 和一个整数 XX 。你要找出 SS 的一个连续子串 TTTT 必须同时满足如下条件:

  1. TT 不能以 ’0’ 开头。

  2. 当把 TT 转化为整数后,TT 必须大于 XX

现在的问题是:有多少个不同的子串 TT 满足上面的要求?

下面解释什么是不同的子串:假设 T1T_1T2T_2 都是 SS 的连续子串,T1=S[a..b]T_1 = S[a..b]T2=S[c..d]T_2 = S[c..d],也就是说 T1T_1SS 的第 aa 个字符至第 bb 个字符,T2T_2SS 的第 cc 个字符至第 dd 个字符。如果 aa 不等于 cc 那么 T1T_1T2T_2 是不同的子串。如果 bb 不等于 dd,那么 T1T_1T2T_2 也是不同的子串。即:当 aa 等于 cc 而且 bb 等于 dd 同时成立时,T1T_1T2T_2 才是相同的子串。

输入格式

多组测试数据。

第一行,一个整数 GG,表示有 GG 组测试数据 ( 1G101 \le G \le 10 )。

每组测试数据格式如下:

第一行,两个整数 SSXXSS 长度不超过 99,而且 SS 的每个字符都是 ’0’ 至 ’9’ 之间的数字 ( 0X7774441110 \le X \le 777444111 )。

输出格式

GG 行,每行一个整数。

样例

4
0 1
10 9
471 47
0 777444111
0
1
2
0