~~~~~~~~~~数据结构
文章平均质量分 82
zzuspy
本人初学者~~
展开
-
单调队列问题
Sliding Window题目传送:POJ - 2823 - Sliding Window闲来没事学学单调队列的写法,嗯,一个很奇怪的队列形式。。单调队列是指:队列中元素之间的关系具有单调性,而且,队首和队尾都可以进行出队操作,只有队尾可以进行入队操作。因为这里是滑动窗口,每次移动需要进行更新,所以可以用单调队列来实现。本题用单调递增队列来求每一个区间的最小值,用单调递减队列来求每一个区间的最大值原创 2015-09-04 12:09:38 · 1365 阅读 · 0 评论 -
数据结构 - 树(基础)
1、无根树转有根树#include #include #include #include #define LL long long#define INF 0x7fffffff#include using namespace std;const int maxn = 1000005;int p[maxn];int n;int root;vector G[maxn];原创 2015-04-14 22:49:37 · 730 阅读 · 0 评论 -
UVA - 11234 - Expressions (栈和队列)
UVA - 11234ExpressionsTime Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & %lluSubmit StatusDescription2007/2008 ACM International Collegiat原创 2015-04-18 22:04:09 · 898 阅读 · 0 评论 -
HDU - 1754 - I Hate It (线段树 - 区间最值)
I Hate ItTime Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 43296 Accepted Submission(s): 17071Problem Description很多学校流行一种比较的习惯。原创 2015-03-18 20:05:41 · 792 阅读 · 0 评论 -
HDU - 1166 - 敌兵布阵 (树状数组 or 线段树)
敌兵布阵Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 47559 Accepted Submission(s): 20136Problem DescriptionC国的死对头A国这段时间正在进行军事演原创 2014-12-28 12:46:51 · 800 阅读 · 0 评论 -
UVA - 11991 - Easy Problem from Rujia Liu? (STL)
UVA - 11991Easy Problem from Rujia Liu?Time Limit: 1000MS Memory Limit: Unknown 64bit IO Format: %lld & %lluSubmit StatusDescriptionProblem EEasy Pr原创 2015-01-31 22:37:54 · 915 阅读 · 0 评论 -
hihoCoder - 1068 - RMQ-ST算法 (RMQ)
#1068 : RMQ-ST算法时间限制:10000ms单点时限:1000ms内存限制:256MB描述小Hi和小Ho在美国旅行了相当长的一段时间之后,终于准备要回国啦!而在回国之前,他们准备去超市采购一些当地特产——比如汉堡(大雾)之类的回国。但等到了超市之后,小Hi和小Ho发现者超市拥有的商品种类实在太多了——他们实在看不过来了!于原创 2015-03-10 17:00:13 · 1096 阅读 · 0 评论 -
UVA - 11235 - Frequent values (RMQ)
UVA - 11235Frequent valuesTime Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & %lluSubmit StatusDescription2007/2008 ACM International Colle原创 2015-03-09 22:42:35 · 625 阅读 · 0 评论 -
SGU - 302 - BHTML 1.0 (栈的应用)
302. BHTML 1.0Time limit per test: 0.25 second(s)Memory limit: 65536 kilobytesinput: standardoutput: standardThe hypertext markup language BHTML 1.0 has only two paired tags. They ar原创 2015-03-15 11:35:41 · 853 阅读 · 0 评论 -
UVA - 11987 - Almost Union-Find (又是并查集~)
UVA - 11987Almost Union-FindTime Limit: 1000MS Memory Limit: Unknown 64bit IO Format: %lld & %lluSubmit StatusDescriptionProblem AAlmost Union-Find原创 2015-02-12 19:54:39 · 868 阅读 · 0 评论 -
UVALive - 3942 - Remember the Word (Trie树)
UVALive - 3942Remember the WordTime Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & %lluSubmit StatusDescriptionNeal is very curious about c原创 2015-02-05 11:51:55 · 737 阅读 · 0 评论 -
HDU - 1233 - 还是畅通工程 (最小生成树!!)
还是畅通工程Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 27443 Accepted Submission(s): 12212Problem Description某省调查乡村交通状况,得到的统计表原创 2014-12-30 17:26:11 · 651 阅读 · 0 评论 -
POJ-2524-Ubiquitous Religions (基本并查集!)
Ubiquitous ReligionsTime Limit: 5000MS Memory Limit: 65536KTotal Submissions: 25152 Accepted: 12406DescriptionThere are so many different religions in the world原创 2014-11-21 12:16:41 · 883 阅读 · 0 评论 -
UVA - 10596 - Morning Walk (欧拉回路!并查集判断回路)
UVA - 10596Morning WalkTime Limit: 3000MSMemory Limit: Unknown64bit IO Format: %lld & %lluSubmit StatusDescription Problem HMorning Walk原创 2014-12-17 20:45:27 · 858 阅读 · 0 评论 -
POJ - 2406 - Power Strings (字符串求周期--next函数的妙用)
题目传送:POJ - 2406思路:就是利用kmp中next数组的特性来求最大周期的AC代码:#include #include #include using namespace std;const int maxn = 1000005;char s[maxn];int next[maxn];int main() { while(scanf(原创 2015-04-24 09:10:28 · 738 阅读 · 0 评论 -
POJ - 2752 - Seek the Name, Seek the Fame (KMP-打印前缀后缀长度)
题目传送:POJ - 2752思路:就是每次都去找当前串的最大相同前缀后缀,找到一个后,令该相同前缀后缀为当前串,再循环调用,注意因为kmp的next函数中的最大相同前缀后缀不包含自身,所以每次都要多输出原串自身长度AC代码:#include #include #include using namespace std;const int maxn = 1000原创 2015-04-24 09:34:40 · 730 阅读 · 0 评论 -
POJ - 1703 - Find them, Catch them (并查集)
题目传送:Find them, Catch them思路:用一个关系数组记录当前结点与其父亲的关系,0表示同类,1表示不同类AC代码:#include #include #include #include #include #include #include #include #include #include #include #include原创 2015-05-12 00:04:22 · 897 阅读 · 0 评论 -
hihoCoder - 1079 - 离散化 (线段树 + 离散化)
#1079 : 离散化时间限制:10000ms单点时限:1000ms内存限制:256MB描述小Hi和小Ho在回国之后,重新过起了朝7晚5的学生生活,当然了,他们还是在一直学习着各种算法~这天小Hi和小Ho所在的学校举办社团文化节,各大社团都在宣传栏上贴起了海报,但是贴来贴去,有些海报就会被其他社团的海报所遮挡住。看到这个场景,小Hi便原创 2015-07-24 22:20:42 · 1077 阅读 · 0 评论 -
并查集简单题
The Suspects题目传送:POJ-1611-The SuspectsAC代码:#include <map>#include <set>#include <cmath>#include <deque>#include <queue>#include <stack>#include <cstdio>#include <cctype>#include <string>#inclu原创 2015-07-29 23:45:17 · 1085 阅读 · 0 评论 -
POJ - 3264 - Balanced Lineup (线段树)
Balanced LineupTime Limit: 5000MS Memory Limit: 65536KTotal Submissions: 39060 Accepted: 18299Case Time Limit: 2000MSDescriptionFor the daily milking, Far原创 2015-07-27 09:42:49 · 657 阅读 · 0 评论 -
HDU - 1698 - Just a Hook (线段树-成段更新)
题目传送:Just a Hook思路:线段树,成段替换, 区间求和。成段更新时,注意延迟标记的作用,它就是用来暂停往下更新来达到节省时间的,然后每次更新每个节点的子节点之前都要判断是否需要往下更新。AC代码:#include #include #include #include #include #include #include #include #i原创 2015-05-14 20:55:49 · 1550 阅读 · 0 评论 -
POJ - 3468 - A Simple Problem with Integers (线段树 - 成段更新)
题目传送:A Simple Problem with Integers思路:线段树,成段增减,区间求和,注意延迟标记需要累加,还有会爆intAC代码:#include #include #include #include #include #include #include #include #include #include #include #原创 2015-05-14 22:13:34 · 834 阅读 · 0 评论 -
蓝桥杯 - 操作格子 (线段树)
题目传送:操作格子思路:简单线段树,单点更新,区间求和以及最值AC代码:#include #include #include #include #include #include #include #include #include #include #include #include #define LL long long#define原创 2015-05-14 08:52:42 · 1015 阅读 · 0 评论 -
POJ - 3667 - Hotel (线段树 - 区间合并)
题目传送:Hotel思路:线段树,区间合并,区间替换,查询最左断点,看胡浩版本的线段树好几天了,今天看这个看了好久,慢慢来吧,具体都写在注释里了AC代码:#include #include #include #include #include #include #include #include #include #include #include原创 2015-05-15 19:06:30 · 1156 阅读 · 0 评论 -
POJ - 2828 - Buy Tickets (线段树)
题目传送:Buy Tickets思路:线段树,从后往前依次插入,插入一个更新一次AC代码:#include #include #include #include #include #include #include #include #include #include #include #include #define LL long long原创 2015-05-14 00:13:14 · 803 阅读 · 0 评论 -
HDU - 3308 - LCIS (线段树 - 区间合并)
题目传送:LCIS线段树,区间合并,一次过啦,没有纠结,这几天过的最愉快的一个题思路:求最长连续上升子序列,外带单点更新,经典的线段树题目。具体看代码注释AC代码:#include #include #include #include #include #include #include #include #include #include原创 2015-05-15 20:31:59 · 1079 阅读 · 1 评论 -
HDU - 3074 - Multiply game (线段树-单点更新,区间求积)
题目传送:Multiply game思路:简单线段树,单点更新,区间求积,这是上次选拔赛选的题,一看题就是线段树,不过当时线段树不太熟,没敢敲,现在看来居然如此轻松,不过注意这里有大量输出,用printf,居然在这里TLE了一次。。。AC代码:#include #include #include #include #include #include #inc原创 2015-05-13 22:33:54 · 980 阅读 · 0 评论 -
HDU - 2795 - Billboard (线段树)
题目传送:Billboard思路:有一个h*w的木板(可以看成h行,每行最多放w的空间),每次放1*L大小的物品,返回最上面可以容纳L长度的位置,没有则输出-1;AC代码:#include #include #include #include #include #include #include #include #include #include原创 2015-05-13 19:57:21 · 572 阅读 · 0 评论 -
HDU - 1394 - Minimum Inversion Number (线段树 - 单点更新,区间求和)
题目传送:Minimum Inversion Number思路:线段树,求最小逆序数,先可以通过n*logn的时间用线段树求出初始的逆序对数,然后递推求出其他的解,递推过程看代码AC代码:#include #include #include #include #include #include #include #include #include #i原创 2015-05-13 13:37:25 · 733 阅读 · 0 评论 -
POJ - 2182 - Lost Cows (线段树)
题目传送:Lost Cows思路:线段树,从后往前扫描,如果当前数字为n,则表示它是剩余的序列中(包括他自己)顺序后的第n+1个数。找到后删除,借助线段树可以达到快速删除的效果AC代码:#include #include #include #include #include #include #include #include #include #in原创 2015-05-13 00:02:22 · 751 阅读 · 0 评论 -
BNU - 4216 - 修路 (并查集判断连通分量)
修路Time Limit: 1000msMemory Limit: 65536KB64-bit integer IO format: %lld Java class name: MainPrev Submit Status Statistics Discuss NextType: None原创 2015-02-12 09:33:54 · 1038 阅读 · 0 评论 -
POJ - 2001 - Shortest Prefixes (字典树!!)
Shortest PrefixesTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 14250 Accepted: 6140DescriptionA prefix of a string is a substring starting at the be原创 2014-12-25 23:47:22 · 544 阅读 · 0 评论 -
POJ - 2481 - Cows (树状数组+排序!!)
CowsTime Limit: 3000MS Memory Limit: 65536KTotal Submissions: 13304 Accepted: 4407DescriptionFarmer John's cows have discovered that the clover growing along th原创 2014-12-27 15:14:47 · 679 阅读 · 0 评论 -
POJ - 2352 - Stars (树状数组!!)
StarsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 34244 Accepted: 14926DescriptionAstronomers often examine star maps where stars are represented b原创 2014-12-27 16:04:54 · 756 阅读 · 0 评论 -
UVA - 112 - Tree Summing (数的求和!栈的应用!)
UVA - 112Tree SummingTime Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & %lluSubmit StatusDescription Tree Summing原创 2014-12-18 21:06:26 · 886 阅读 · 0 评论 -
HDU - 1102 - Constructing Roads (最小生成树--prim算法!!)
Constructing RoadsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14890 Accepted Submission(s): 5674Problem DescriptionThere原创 2014-12-30 15:27:39 · 686 阅读 · 0 评论 -
hihoCoder - hiho一下 第二十六周 - A - 最小生成树一·Prim算法
题目1 : 最小生成树一·Prim算法时间限制:10000ms单点时限:1000ms内存限制:256MB描述最近,小Hi很喜欢玩的一款游戏模拟城市开放出了新Mod,在这个Mod中,玩家可以拥有不止一个城市了!但是,问题也接踵而来——小Hi现在手上拥有N座城市,且已知这N座城市中任意两座城市之间建造道路所需要的费用,小Hi希望知道,最少原创 2015-01-01 10:04:29 · 1017 阅读 · 0 评论 -
hihoCoder - 1089 - 最短路径·二:Floyd算法 (floyd算法!!)
#1089 : 最短路径·二:Floyd算法时间限制:10000ms单点时限:1000ms内存限制:256MB描述万圣节的中午,小Hi和小Ho在吃过中饭之后,来到了一个新的鬼屋!鬼屋中一共有N个地点,分别编号为1..N,这N个地点之间互相有一些道路连通,两个地点之间可能有多条道路连通,但是并不存在一条两端都是同一个地点的道路。由于原创 2015-01-01 23:15:43 · 1033 阅读 · 0 评论 -
HDU - 1301 - Jungle Roads (最小生成树!!prim算法!!)
Jungle RoadsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4572 Accepted Submission(s): 3354Problem DescriptionThe Head原创 2014-12-30 21:37:55 · 651 阅读 · 0 评论 -
HDU - 1863 - 畅通工程 (最小生成树!!prim算法!!)
畅通工程Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 18223 Accepted Submission(s): 7726Problem Description省政府“畅通工程”的目标是使全省任何两个原创 2014-12-30 17:09:42 · 692 阅读 · 0 评论