GG的匹配串

Description

2015年广东工业大学ACM校赛要来~\(≧▽≦)/~辣辣辣,作为校赛的出题人之一,GG想出了一道水题来考考大家。相信小伙伴们都学过字符串匹配,于是字符串匹配的水题就诞生辣!GG给出了一段长度为N的大写字母序列,现在他要你修改这一段字母序列,使得这段字母序列上最前面的K个字母组成的序列与最后面的K个字母组成的序列一一匹配。 
 
例如对于序列“ATUUUUAC”和K = 2,可以通过将第二个字母修改为“C”,使得最前面的两个字母与最后面的两个字母都为“AC”,当然 还存在其他的修改方法,现在GG要求你求出要使字符串匹配至少需要修改多少个字母。

Input

有T组数据输入。(T <= 100) 
每组数据只有两行,第一行为一个字符串,第二行为一个正整数K,字符串的长度不会超过1000,且至少为1。(1 <= K <= N)。

Output

对于每组数据输出至少需要修改的字母数量

Sample Input

2
ATUUUUAC
2
ATACGTCT
6

Sample Output

1
3

HINT

大意:感觉题目很好~~不会写,有kuangbin大神的代码,可惜看不懂,等晚些时候去搜搜别人的代码0 0——传送门

时间: 2024-10-11 00:15:34

GG的匹配串的相关文章

广工校赛——GG的匹配串

Description 2015年广东工业大学ACM校赛要来~\(≧▽≦)/~辣辣辣,作为校赛的出题人之一,GG想出了一道水题来考考大家.相信小伙伴们都学过字符串匹配,于是字符串匹配的水题就诞生辣!GG给出了一段长度为N的大写字母序列,现在他要你修改这一段字母序列,使得这段字母序列上最前面的K个字母组成的序列与最后面的K个字母组成的序列一一匹配.  例如对于序列“ATUUUUAC”和K = 2,可以通过将第二个字母修改为“C”,使得最前面的两个字母与最后面的两个字母都为“AC”,当然 还存在其他

GG的匹配串 ______(广东工业大学2015校赛初赛)

Description 2015年广东工业大学ACM校赛要来~\(≧▽≦)/~辣辣辣,作为校赛的出题人之一,GG想出了一道水题来考考大家.相信小伙伴们都学过字符串匹配,于是字符串匹配的水题就诞生辣!GG给出了一段长度为N的大写字母序列,现在他要你修改这一段字母序列,使得这段字母序列上最前面的K个字母组成的序列与最后面的K个字母组成的序列一一匹配. 例如对于序列"ATUUUUAC"和K = 2,可以通过将第二个字母修改为"C",使得最前面的两个字母与最后面的两个字母都

hdu2896 病毒侵袭 AC自动机入门题 N(N &lt;= 500)个长度不大于200的模式串(保证所有的模式串都不相同), M(M &lt;= 1000)个长度不大于10000的待匹配串,问待匹配串中有哪几个模式串,

/** 题目:hdu2896 病毒侵袭 链接:http://acm.hdu.edu.cn/showproblem.php?pid=2896 题意:N(N <= 500)个长度不大于200的模式串(保证所有的模式串都不相同), M(M <= 1000)个长度不大于10000的待匹配串,问待匹配串中有哪几个模式串, 题目保证每个待匹配串中最多有三个模式串. 思路:ac自动机做法,字符为可见字符,那么直接就是他们的ascii值作为每一个字符的标志.最多128: 由于不超过三个,所以找到3个就可以re

hdu3065 病毒侵袭持续中 AC自动机入门题 N(N &lt;= 1000)个长度不大于50的模式串(保证所有的模式串都不相同), 一个长度不大于2000000的待匹配串,求模式串在待匹配串中的出现次数。

/** 题目:hdu3065 病毒侵袭持续中 链接:http://acm.hdu.edu.cn/showproblem.php?pid=3065 题意:N(N <= 1000)个长度不大于50的模式串(保证所有的模式串都不相同), 一个长度不大于2000000的待匹配串,求模式串在待匹配串中的出现次数. 思路:ac自动机做发,val标记每一个病毒串编号,通过print函数统计每一个病毒出现的次数. AC自动机好文章:http://www.cppblog.com/menjitianya/archi

富豪凯匹配串

bitset的用法:https://www.cnblogs.com/magisk/p/8809922.html https://blog.csdn.net/caipengbenren/article/details/90443961 例题汇总 https://blog.csdn.net/weixin_38686780/article/details/89377729 连接:富豪凯匹配串 题解:根据与运算的特点,只有为两个1时为1,否则为0.根据题意当‘_’遇到0/1时都是匹配成功的,我们不妨把'

内存 匹配串

/*返回t在s中的位置,若未找到则返回-1*/int strindex(char* s,char* t) { int i, j, k; for(i = 0; s[i] != '\0'; i++) for(k = i,j = 0; s[k]=t[j] && s[k]!='\0'; k++,j++ ) ; if(j > 0 && t[k]=='\0') return i; return -1; } 以上函数有一个特点是只能查找c定义的字符串类型.随意给定一个patter(

KMP算法,查询匹配串的个数

想不到时隔两年回来重新学习KMP算法还是那么难,不过理解了大概,把例程贴上来,如果是求数量只需要加个count变量记录即可. #include"stdio.h" #include"string.h" void makeNext(const char P[],int next[]) { int q,k; int m=strlen(P); next[0]=0; for(q=1,k=0;q<m;q++) { while(k>0&&P[q]!=P

COJ 1287 求匹配串在模式串中出现的次数

这里要在后缀自动机的节点中维护一个从到达当前位置出现的字符串总个数 1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 5 using namespace std; 6 #define N 200010 7 #define M 26 8 9 struct SamNode{ 10 SamNode *son[26] , *f; 11 int l , sc; 12 void init(){ 13 f

广工校赛——LCS——完美串

Description 爱美之心人皆有之,GG也不例外.所以GG他对于完美串有一种热衷的爱.在GG眼中完美串是一个具有无比魅力的01子串.这个子串有之其魅力之处,对它取反后水平翻转,它又和它原来的一模一样.这就是GG热爱它的原因.但是世上并不是所有的01串都是完美串,所以GG下定决心想改造01串,使所有的01串都成为完美串.但是改造01串是一个巨大的工程,GG太忙了,他还差T个01串未改造,他需要你的帮助.而你只需要告诉它至少添加几个'0','1'字符就可以使得01串成为完美串. Input 有