csu1328模拟
来源:互联网 发布:mybatis打印sql语句 编辑:程序博客网 时间:2024/06/05 01:05
题目链接:点击打开链接
#include <iostream>#include<cstdio>#include<algorithm>#include<cstring>#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1using namespace std;const int maxn=1e3+10;char s[maxn],sub[maxn];int p[maxn],len;int Max,pos,cunt,n;void work(int k1,int k2){ int i,j,cost; cost=0;for(i=k1,j=k2;i>=0&&j<cunt;i--,j++){ if(sub[i]!=sub[j])cost++; if(cost>n)break;}i++,j--;if(i>j)return ;int Maxlen=p[j]-p[i]+1;//printf("k1=%d k2=%d i=%d j=%d %d\n",k1,k2,i,j,Maxlen);if(Maxlen>Max){ Max=Maxlen; pos=p[i];}}int main(){ int i,j,k; int ans=0; while(~scanf("%d\n",&n)) { Max=0,pos=0; gets(s); len=strlen(s); // printf("len=%d\n",len); cunt=0; for(i=0;i<len;i++) { if(isalpha(s[i])) { sub[cunt]=tolower(s[i]); p[cunt++]=i; } } sub[cunt]='\0'; // puts(sub); // printf("cunt=%d\n",cunt); for(i=0;i<cunt;i++) { work(i,i); work(i,i+1); } printf("Case %d: %d %d\n",++ans,Max,pos+1); }}
阅读全文
0 0
- csu1328模拟
- csu1328(近似回文串)
- 最长回文子串的变形 && csu1328: 近似回文词
- CSU1328 近似回文词(字符串处理,最长回文子串)
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟
- 模拟:
- 模拟
- 模拟
- 模拟
- 模拟
- Java集合类Set的add方法妙用
- UVA
- Cortex-m3 异常切换进Trumble模式
- Android Api demo系列(一) (App>Activity>Animation)
- js将具有连续相同内容的列进行合并
- csu1328模拟
- 2017.08.23工作日记
- Word Break && Word Break II
- 伸缩布局flex取值的区别
- 回顾Android Studio音乐播放器的编写
- 算法提高 ADV-83 寻找三位数
- vue搭建项目
- 一致性Hash算法
- Innodb的行级锁的特性