- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 POJ-2752(KMP算法思想应用)
题意 给你一个字符串 长度4e5以内 然后从小到大(子串长度)输出即是前缀也是后缀的子串的长度思路 KMP算法能够很好的解决公共前后缀问题 首先 每一个字符串本身一定是最长的符合条件的解 其次我们可以用next数组中的值来递归的深入得出从大到小的值每一个字符串的最长公共前后缀一定是满足条件的最优解(除本身以外);所
2018-01-26 08:26:44 475
原创 POJ 2406(KMP算法思想求周期+1)
题意 给你一个字符串 长度在1e6以内 求这个字符串的最大周期是多少思路 用kmp算法中的next数组来求周期再好不过了 len - next[len]可以求出最小循环节长度 在这个值为零或者长度不能整出这个值的时候就输出 1 这种情况也就是把这一整个串当成一个循环节 如果能整出
2018-01-25 12:36:52 283
原创 HDU 1358(KMP思想求周期)
题意 给定一个长度为1e6的字符串 求出这个串中所有有循环节并且周期大于等于二的串 并且输出这些串的起点和周期思路 既然是求周期问题 可以利用KMP算法中next数组来求解 由于len-next[len]就是当前点的最小循环节 所以 可以用取余的方式来判断是不是刚好形成周期串 自己在写这道题的
2018-01-25 11:12:08 296
原创 HDU 3746
题意可以对字符串开头和结尾添加字符,使该字符串至少有两个循环节,求最少添加的字符数量岁的法国思路 首先求循环节的过程可以使用kmp算法中next[len]来解决 因为next[len]中的值为最长公共前后缀 所以 len - next[len]的值就是len - 最长的公共连续部分,也就是最小循环节的长度。所以我们可以通过 len % (len
2018-01-24 11:21:30 194
原创 EOJ 3484
题目字符串的大,不在于长,而在于妙。现在给出由数字组成的字符串 s,求出字符串的所有的非空连续子串中,最妙的那个子串。一个字符串的妙是这样定义的:将这个子串所表示的整数(有可能带前导 0),除以 10L(其中L 为字符串的长度)。比如说 123456789 的子串 456 的妙为 456103=0.456。输入输出Inpu
2018-01-22 17:45:18 709
原创 Educational Codeforces Round 17 C && codeforces 762C C. Two strings (二分 + 字符串前后缀)
题意 给出两个字符串a和b,让你从b串中删掉连续的尽量少的部分 使b串变成a串的一个子序列如果没有办法满足条件输出"-"号思路 首先删掉的部分是连续的 这个条件直接导致这个问题的答案具有二分的性质 如果删掉长度为k的字符串能够满足条件 那么是不是删掉任意处于区间[k,strlen(str)]之间的任意长度字符串都必定满足条件所以我最开始很快想到了二分 但是二分答
2018-01-20 15:12:32 1025
area_201901191623.sql
2020-01-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人