2013年9月16日

poj 2185(二维kmp)

摘要: 题意:让你求一个最小的覆盖子矩阵。分析:首先第一点是确定的:那就是这个子矩阵肯定位于左上角,然后按行考虑,求出每一行可能的重复子串的长度,然后取所有行都存在并且长度最短的长度最为最小子矩阵的宽,最后按列队长度为宽的字符串进行一次kmp求出循环节的长度。代码实现:#include#include#includeusing namespace std;int n,m,windth,height;char str[10005][80];int visited[80],next[10005];void solve(){ int i,j; for(i=0;i=1;j--) ... 阅读全文

posted @ 2013-09-16 20:32 后端bug开发工程师 阅读(302) 评论(0) 推荐(0) 编辑

导航