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

【题解】字符串

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

【题目描述】

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 。

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

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

    分享给朋友:

    相关文章

    【题解】柠檬水找零

    【题目描述】在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你...

    【题解】计数2的N次方

    【题目描述】任意给定一个正整数N(N≤100),计算2的n次方的值。【输入描述】输入一个正整数N。【输出描述】输出2的N次方的值。【样例输入】5【样例输出】32【参考答案】#include<io...

    【算法】最少步数

    【算法】最少步数

    【题目描述】在各种棋中,棋子的走法总是一定的,如中国象棋中马走“日”。有一位小学生就想如果马能有两种走法将增加其趣味性,因此,他规定马既能按“日”走,也能如象一样走“田”字。他的同桌平时喜欢下围棋,知...

    【题解】网线主管

    【题目描述】仙境的居民们决定举办一场程序设计区域赛。裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛。他们决定将选手的电脑用星形拓扑结构连接在一起,即将它们全部连到一个单一的中心服务器。为...

    【题解】大整数乘法

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

    【题解】01背包

    【题目描述】一个旅行者有一个最多能装 M 公斤的背包,现在有 n 件物品,它们的重量分别是W1,W2,...,Wn,它们的价值分别为C1,C2,...,Cn,求旅行者能获得最大总价值。【输入描述】第一...