当前位置:首页 > 题解目录 > 正文内容

【题解】字符串

亿万年的星光4年前 (2022-04-02)题解目录1805

【题目描述】

Kri 非常喜欢字符串,所以他准备找 t组字符串研究。 第 i次研究中, Kri 准备了两个字符串S 和R ,其中S 长度为n ,且只由  0 , 1 , -  三种字符构成 (注:这里的第三种字符是减号), R初始时为空 。 

每次研究,Zay 会带着一个美丽的长度为 m的字符串T 来找 Kri 玩,Kri 非常羡慕 Zay 拥有如此美丽的 字符串,便也想用字符串S 和R 变出字符串T 。 

具体地, Kri 将会进行 n次操作。每次操作中, Kri 会取出S 的第一个字符(记为c ),并将其从 S中 删去。如果 - ,则 Kri 要删去R 的开头字符或结尾字符(数据保证删去后 R不为空)。否则, Kri 会将 c加入到R 的末尾。

 当进行完所有操作后, Kri 会检查R 是否和T 相等。如果R=T , Kri 就会感到开心;否则, Kri 会 感到难受。

 请问在每次研究中, Kri 有多少种操作方式使自己最后感到开心?我们定义两种方案不同,当且仅当在 某种方案的某次操作中, Kri 删去了 R的开头字符。而在另一种方案的这次操作中, Kri 删去了R 的结 尾字符。

 由于答案可能很大,你只需要输出答案除以1,000,000,007 (即109+7 )的余数。

【输入描述】

第一行一个正整数 t。 

接下来t 组数据分别表示 t次字符串的研究,对于每组数据:

 第一行有两个正整数n,m ,分别表示字符串S,T 的长度。 

第二行是字符串 S。 

第三行是字符串 T。

【输出描述】

共t 行,第 i行表示第 i组研究的答案。

【样例输入】

3
6 2
10-01-
01
7 3
010-1-1
101
6 4
111-00
1100

【样例输出】

2
1
2`-1

【样例解释】

对于第一组数据,有以下两种方案: 

第一个 - 删 R的开头,第二个 - 删R 的结尾。

 第一个 - 删R 的结尾,第二个 - 删R 的开头。

【数据范围】

对于20%的数据,n,m<=15 。 

对于30 的数据, n,m<=30。 

对于 70%的数据,n,m<=80 。 

对于另10% 的数据, 保证答案不超过1 。 

对于100% 的数据,1<=t<=5,  1<=n,m<=400 。

扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

合影效果

【题目描述】小云和朋友们去爬香山,为美丽的景色所陶醉,想合影留念。如果他们站成一排,男生全部在左(从拍照者的角度),并按照从矮到高的顺序从左到右排,女生全部在右,并按照从高到矮的顺序从左到右排,请问他...

【题解】区间和

【描述】输入一个整数Q,进行Q次询问,每次给定两个整数l和r,每一次输出l~r中所有平方数的和 % 1000000007【输入】第一行是一个整数Q后面的Q行每行有2个数字l和r【输出】Q行,...

整理药名

【题目描述】医生在书写药品名的时候经常不注意大小写,格式比较混乱。现要求你写一个程序将医生书写混乱的药品名整理成统一规范的格式,即药品名的第一个字符如果是字母要大写,其他字母小写。如将ASPIRIN、...

【题解】大整数乘法

【题目描述】求两个不超过200位的非负整数的积。【输入描述】有两行,每行是一个不超过200位的非负整数,没有多余的前导0。【输出描述】一行,即相乘后的结果。结果里不能有多余的前导0,即如果结果是342...

【题解】切割钢管

【题解】切割钢管

【题目描述】小A是某工地的计算工程师。工地现有 n 根钢管,第 i 根钢管的长度为 ai。现在想用这 n 根钢管来做一个支撑用的柱子。我么可以切割这些钢管成为更短的钢管,但是不能缝合两根钢管。为了安全...

家庭作业

题目描述老师在开学第一天就把所有作业都布置了,每个作业如果在规定的时间内交上来的话才有学分。每个作业的截止日期和学分可能是不同的。例如如果一个作业学分为10,要求在6天内交,那么要想拿到这10学分,就...