摘要: 【链接】h在这里写链接【题意】 给你一个长度为n(n这一点可以将二分的右界设置为d-c+1; 找到一个就返回True即可。 显然前缀越长越不可能,单调性比较显然 复杂度? m*(log2n*常数)的样子? 感觉能卡过去【错的次数】0... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(114) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】 给你一个字符串; 让你把它分割成最多k个部分。 然后求出每个部分的字符串里面子串的字典序最大的那一个子串。 然后在这k个子串里面,再选一个字典序最最大的那个。 作为魔法串。 要求这个魔法串的字典序尽可能地小.【题解】... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(117) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】接上一篇文章【题解】一个字符串所有不同的子串的个数=∑(len-sa[i]-height[i])【错的次数】0【反思】在这了写反思【代码】#include using namespace std;const int N = 2e3;const int MAX_CHAR... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(116) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】 给你一个长度最多为1000的字符串 让你求出一个数x,这个x=这个字符串的不同子串个数;【题解】 后缀数组题。 把原串复制一份,加在原串后面(中间用分隔符分开),这样每个子串都能重复出现一次了,枚举Height的时候就都能枚举到了. 求出... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(191) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】 k是最高级别的分数,最高界别的分数最多只能有x个。 1= 0; i--)//枚举x节点它的重要节点个数 { //这里的i必须是逆序的,这样才可保证f[x][i-j]访问到的是x这个节点前面 //的儿... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(104) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】 给你n(nusing namespace std;const int N = 1e5 + 500;const int MAX_CHAR = 255;//每个数字的最大值。char s[N + 10];//如果是数字,就写成int s[N+10]就好,从0开始存i... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(169) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】给你一个长度为n的序列。问你能不能在其中找到一个最长的子串。 这个子串至少出现了k次.【题解】长度越长,就越不可能出现k次后缀数组+二分。N最大为20000;每个数字在0到1e5之间防止出错,把那个数字都加上1就好(因为N比每个数字的大小来的小,所以需要把N也开到... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(99) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】给你n个字符串。让你找最长的字符串s;这个s在超过一半的子串里面都有出现过且长度大于n/2;如果有多个,输出多行。(按字典序输出)也没说会不会出现大写。【题解】后缀数组+二分。把每个字符串之间用一个没出现过的分隔符分开;(从'z'+1开始)100*1000 + 100大... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(129) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】给你n个字符串。让你找一个字符串s.设s'为这个字符串的逆序。要求s或者s'在每个字符串里都能够找得到.并且要求s的长度最长。求出这个最长的串的长度.【题解】把n个串,每个串逆序或者是倒序.顺序加成一个串.(标记一下每个串是属于第几个串..逆序顺序属于同一个串!)(中间... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(82) 评论(0) 推荐(0)
摘要: 【链接】h在这里写链接【题意】 给你一个长度最多为2万的序列(由1..88这些数字组成)。 让你在里面找一个子串。 这个子串或它的转置子串(就是每个数字都加上或减去相同的数字)在这个序列中 出现了至少两次,且没有重叠部分。让你求这个子串最长能够多长。 这个子串的长度最少... 阅读全文
posted @ 2017-10-04 18:44 AWCXV 阅读(105) 评论(0) 推荐(0)