![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 73
birdforever
我是一个纯粹的人,生不带来,死不带走,只为无怨无悔地活一次!
展开
-
poj 1200 Crazy Search
<br />//poj 1200 Crazy Search (hash)<br />/*<br />这题一看就是hash,但是没有给数据范围,只有一个结果16M的提示,这就让我很难办了。<br />交了很多遍都RE,后来学别人把有数组瞎开到老大,又WA了N遍,后来才发现竟是cmp写错了,<br />呜呼哀哉!<br />PS: 貌似数据很弱,本题的算法很粗糙都能63MS过,而且好像只有小写字母,未考证。<br />*/<br />#include <iostream><br />#include <algo原创 2010-08-25 00:09:00 · 616 阅读 · 0 评论 -
poj 1204 Word Puzzles
<br />//poj 1204 Word Puzzles<br />/* <br />题解:先把要询问的字符串用trie存起来,然后扫一遍字符矩阵,<br /> 如果对应tire中且未回答则记录答案,最后把全部答案输出。<br />PS: 这题又让我学了不少,对于这种题可以像tarjan算法一样把<br /> 输入的问题先存起来,再在搜索过程中慢慢回答。<br />*/<br />#include <iostream><br />#include <vector><br />usi原创 2010-08-26 00:23:00 · 844 阅读 · 0 评论 -
poj 1635 Subway tree systems
<br />/*<br />Poj 1635<br />无回路的图,选定根节点,即可确定一棵树。一棵树统计每个节点的子节点个数,<br />每个节点的深度,最后给每个节点排序,即可当成树的最小表示。最小表示相同的树同构。<br />*/<br />#include <iostream> <br />using namespace std; <br />const int maxn=3005; <br />struct node <br />{ <br /> int depth,so原创 2010-08-30 00:30:00 · 790 阅读 · 0 评论 -
poj 2155 Matrix
<br />//POJ 2155 Matrix 二维线段树/二维树状数组<br /><br />#include <stdio.h> <br />#include <stdlib.h><br />#include <cmath><br />#include <algorithm><br />#include <ctime><br />using namespace std;<br />const int inf=1<<30;<br />bool ltree[2500][2500];<br />int n;<原创 2010-08-30 00:28:00 · 479 阅读 · 0 评论 -
poj 1816(trie+dfs)
<br />//poj 1816<br />#include <iostream><br />#include <cstdlib><br />#include <algorithm><br />#include <cstring><br />#include <vector><br />using namespace std;<br />const int inf=1<<28;<br />int n,m,k;<br />const int root=0;<br />struct ID<br />{<br原创 2010-08-31 21:11:00 · 553 阅读 · 0 评论 -
poj 3468(线段树应用:区间求和)
// poj 3468#include #include #include using namespace std;const int inf=1int n,m,k;int a[100010];struct node{ int l,r; long long sum; long long add;}ltree[400010];void build(int root,int l,int r){ ltree[root].l=l; ltree[root].r=r;原创 2010-08-31 21:12:00 · 357 阅读 · 0 评论 -
poj 3630(简单trie应用)
<br />//poj 3630<br />#include <iostream><br />#include <cstdlib><br />#include <algorithm><br />#include <cstring><br />using namespace std;<br />const int inf=1<<28;<br />int n,m,k;<br />const int root=0;<br />struct node<br />{<br /> int branch[10];<br原创 2010-08-31 21:11:00 · 468 阅读 · 0 评论 -
poj 1182 食物链
//poj 1182 食物链 并查集应用 /*此题的重要出发点是动物之间的关系,对每一句话完善关系结构用于判断真假,而不要局限于它们属于A、B还是C类,这个没有意义。 此题如果用向量思想可以精简到一个并查集,每一对明确关系的动物都在同一个并查集里。每一个并查集里的动物都维护一个跟它父结点的关系,r[a]=0表示同类,r[a]=1表示捕食,r[a]=2表示被捕食,这样就可以得到它跟集合中任何一个元素的关系。 */ #includeusing namespace std;i原创 2010-09-05 17:30:00 · 661 阅读 · 0 评论