- 博客(4)
- 问答 (1)
- 收藏
- 关注
原创 后缀数组 + LCP(最长公共前缀)
SA[] : SA[]数组保存的是一个1-n的全排列,保存的是: 将所有后缀按字典序排序后,串在原串中的位置。 即有suffix(SA[i]) < suffix(SA[i+1]) rank[] : rank[]数组保存的是 suffix(i)在所有后缀中按字典序排序的“名次”。 总结:后缀数组是“排第几的是谁?”,名次数组是“你排第几?”LCP(i,j):suffix(SA[i])与suff
2017-10-15 22:22:06 1806
原创 HDU5521(最短路+建边)
图论太菜了啊= =。 题解:每个集合外多加一个点,使得集合中的点和这集合外的点连起来,权值为cost,反过来建一条权值为0的边,然后从1跑spfa,从n跑spfa,那最短路就是max(dist1[i],dist2[i])中的最小值。枚举一下就可以其实挺水的#include <iostream>#include <cstring>#include <string>#include <algor
2017-10-15 20:45:29 288
原创 线段树整理
主要是记录一下线段树的写法,包括建树、区间查询、单点更新 以后就统一用这个写法了,很清楚#include <iostream>#include <cstring>#include <string>#include <algorithm>#include <cstdio>#include <cmath>#include <map>#include <set>#include <que
2017-10-10 23:19:18 163
原创 codeforces #436 - E. Fire (记录路径dp)
有一些东西,抢救的时间为t,时间到达d会消失,价值为p, 问在最后一个东西销毁之前所能抢救的最大物品价值是多少,并输出抢救的个数及序号。题解:dp[n]表示前n秒内所能抢救物品的最大价值。 排序枚举时间 其实我记录这题的价值在于如何记录路径,学习一下,应该是可以通用的吧#include <iostream>#include <cstring>#include <string>#inclu
2017-10-10 22:09:07 200
空空如也
XShell Mongodb报错`CURL_OPENSSL_4' not found
2021-07-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人