![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
liaojinyu282
这个作者很懒,什么都没留下…
展开
-
pku 3277 (线段树+离散化)
因为区间最大到10的9次方,开这么大的空间内存肯定不够,所以要离散化,用map存入然后用iterator遍历得到的有序序列存入vector。然后以vector的下标建立线段树,统计时若结点不是叶子结点,则它的值为左右孩子的值之和,否则返回 底*高 。 参考 岳云涛 《浅谈线段树在信息学竞赛中的应用》 #include #include #include using原创 2010-01-16 19:44:00 · 609 阅读 · 0 评论 -
pku 1611(并查集)
最初将每个元素初始化为一个集合,每次输入记录它的前一个值,找出前一个值的根和当前输入的根,将他们合并,并用一个ans[]记录以当前元素值为根的集合元素总个数,全部输入合并之后,find(0)找到0的根ans[root]即为所求。 #include int pre[30005],ans[30005]; //ans[]记录以此元素为根的树共多少元素int n,m,k原创 2009-12-12 18:46:00 · 495 阅读 · 0 评论 -
pku 1308(并查集)
#include #include using namespace std;int pre[10005];bool flag;map mm;map::iterator it;void Union(int &start,int &end){ pre[end]=start;}int Find(int x){ if(pre[x]!=0) retu原创 2010-03-05 16:12:00 · 655 阅读 · 0 评论 -
pku 3630(静态trie树)
用动态树TLE,改成静态后125ms。将输入字符串按字符串长度从大到小排序然后存入树中,若最后插入字符的引用次数大于1,则该字符串被覆盖。静态树的空间要开大一点,不然会RE #include #include #include using namespace std; class node { public: char str[11]; int原创 2010-04-29 22:16:00 · 824 阅读 · 1 评论 -
hdu 2222(AC自动机模板)
#include #include #include using namespace std;const int size=26;char key[55],dir[1000005];class ac_auto{ public: ac_auto *fail; ac_auto *next[size]; int原创 2010-05-13 14:06:00 · 1146 阅读 · 1 评论