摘要: 题意 "题目链接" Sol 一开始的思路:新建一个虚点向每个点连边,再加上题面中给出的边,边权均为大小 需要购买的数量 然后发现死活都过不去 看了题解才发现题目中有个细节——买了$A$就可以买$B$,但是人家没告诉你必须买够$A$的数量才能买$B$呀qwqqqqqqq 所以建图的时候只算一次贡献就行 阅读全文
posted @ 2018-11-28 21:51 自为风月马前卒 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 朱刘算法?感觉又是一种神仙贪心算法 大概就是每次贪心的用每个点边权最小的入边更新答案,如果不行的话就缩起来找其他的边 不详细说了,丢 "链接" 走人.. cpp include using namespace std; const int MAXN = 1e5 + 10, 阅读全文
posted @ 2018-11-28 20:17 自为风月马前卒 阅读(462) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 毒瘤SDOI 终于有一道我会做的题啦qwq 首先,本质不同的子串的个数 $ = \frac{n(n + 1)}{2} \sum height[i]$ 把原串翻转过来,每次就相当于添加一个后缀 然后直接用set xjb维护一下前驱后继就行了 时间复杂度:$O(nlogn)$ 阅读全文
posted @ 2018-11-28 18:37 自为风月马前卒 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 这题打死我也不会想到后缀数组的,应该会全程想AC自动机之类的吧 但知道这题能用后缀数组做之后应该就不是那么难了 首先把$S$和$S0$拼到一起跑,求出Height数组 暴力枚举每个后缀是否能成为答案。 具体来说,每次比较当前后缀和$S_0$的lcp,如果长度$ using 阅读全文
posted @ 2018-11-28 16:50 自为风月马前卒 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 不要问我为什么发两篇blog,~~就是为了骗访问量~~ 后缀数组的也比较好想,先把所有位置差分,然后在height数组中二分就行了 ~~数据好水啊~~ 阅读全文
posted @ 2018-11-28 14:59 自为风月马前卒 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 题意 "题目链接" Sol 用什么后缀数组啊 直接差分之后 二分+hash找最长公共子串就赢了啊。。。 时间复杂度:$O(nlogn)$(不过我写的是两个log。。反正也能过) cpp // luogu judger enable o2 include define ull unsigned lon 阅读全文
posted @ 2018-11-28 12:36 自为风月马前卒 阅读(247) 评论(0) 推荐(0) 编辑

Contact with me