数据结构
_binbin
我是“三好学生”:好吃,好玩,好睡。
展开
-
CSU 1098: Happy watering(线段树)
题意:。。。每一次找最矮的更新,如果不更新最矮的,则最小值不变,其他的值增大了也没有用。#include #include #include #include #include #include using namespace std;const int N = 100009;const int INF = 0x3f3f3f3f;#define lson l,mid原创 2012-08-12 17:05:08 · 468 阅读 · 0 评论 -
URAL 1628 White Streaks(数据结构)
题意:给定n*m的格子,其中有k个点被染成了黑色,求白色长方形大小为1*L或者L*1的个数+1*1的正方形的个数。#include #include #include #include #include #include #include #include #include #include #include #include #define LL long lo原创 2013-08-05 10:09:37 · 1830 阅读 · 0 评论 -
1701. Ostap and Partners(带权值并查集)
有n个人。其中0的工资是0,有m句话,问最先出现假话的是那句。但一个集合跟0号所在的集合合并的时候需要判断这个集合的最小值是否小于0,如果小于0,则这句话就是假话。code:#include #include #include #include #include #include #include #include #include #include #includ原创 2013-08-05 21:12:31 · 691 阅读 · 0 评论 -
URAL 1650. Billionaires(线段树)
题意:求城市财富排行第一的天数。有两个城市的财富值都最多,则不计算。首先输入n行,每行代表一个人。 名字,最初所在的城市,拥有的财富(不一定能被100000000整除)。计算m天的城市财富排行。这些人有k次迁移。k行,每一行分别是:在第几天晚上迁移的,迁移的人,迁入的城市。用线段树记录每一个城市的财富值、#include #include #include #includ原创 2013-08-07 20:59:10 · 1478 阅读 · 0 评论 -
RUAL 1682. Crazy Professor (并查集+预处理)
题意:从1写到INF,如果正在写的数字b与前面的数字a存在关系:(a*a+b)%k==0 or (a+b*b)%k==0 则连一条a到b的无向边。当出现环的时候结束。求写到多少的时候出现环。#include #include #include #include #include #include #include #include #include #incl原创 2013-08-09 16:24:21 · 684 阅读 · 0 评论 -
1772. Ski-Trails for Robots (STL SET)
题意:滑雪,有n条滑道,滑道中有障碍。可以换滑道。问最少更换多少次滑道可以到达终点。用set水过。stl是个好东西。#include #include #include #include #include #include #include #include #include #include #include #include #define LL long l原创 2013-08-12 16:16:35 · 648 阅读 · 0 评论 -
URAL 1542. Autocompletion (线段树+STL)
题意:在n个单词中选择与给定字符串为前缀的频率最高的十个单词。先按字符串排序。在用线段树找区间频率最高的10个单词。在树中不能直接存字符串,要用指针。纠结啊。。#include #include #include #include #include #include #include #include #include #include #include #inclu原创 2013-08-13 10:14:38 · 775 阅读 · 0 评论 -
URAL 1424. Minibus (贪心+multiset+multimap+线段树)
题意:一辆车,从1点到n点,车上只有m个位置,载一个客人p块钱。承载哪些客人可以使收入最大。最大是多少,输出这些人。可以中贪心。按下车的先后顺序排列。尽量让客车满载。第八组数据大概长这副摸样:10 3 3 11 31 31 3使用了各种stl啊。。。。#include #include #include #include #include #inclu原创 2013-08-17 10:20:30 · 820 阅读 · 0 评论 -
codeforces 362 C. Insertion Sort(树状数组,逆序数)
题意:给定一个序列,选择其中的两个数交换位置,问有多少方法使得交换后的逆序数最小。枚举交换任意两个位置的逆序数。用树状数组优化。#pragma comment(linker, "/STACK:1024000000,1024000000")#include #include #include #include #include #include #include #inclu原创 2013-11-15 15:09:39 · 1381 阅读 · 0 评论 -
URAL 1523.K-inversions (树状数组)
555,取余之后,有可能出现负数。/************************************ * Author : binwin20 * * Blog : blog.csdn.net/binwin20 * ************************************/#pragma comment(linker, "/原创 2013-11-08 16:02:38 · 1134 阅读 · 0 评论 -
1752. Tree 2 (数据结构)
找出树直径的两个端点,找出所有点到这两个点的距离。对每一个询问。查看被询问点到两个端点距离为k的点,如果存在就输出。#include #include #include #include #include #include #include #include #include #include #include #include #define LL lo原创 2013-08-03 20:53:40 · 886 阅读 · 0 评论 -
POJ 1442 Black Box(堆||treap)
想学treap的,结果发现这题用堆也能做。用堆的写法:#include #include #include #include #include #include #include #include #define LL long long#define DB doubleusing namespace std;priority_queue quemx,quemi原创 2013-06-19 22:44:10 · 866 阅读 · 0 评论 -
POJ 2823 Sliding Window(最小堆+最大堆)
昨天写了一下最小堆,,今天再写就容易多了..把数组中连续的k个数字存入堆中,找出最小(大)的,输出...再把序号为i-K+1 的数字从堆中删去.多用了一个数组当指针..多写几次堆,,以后思路更清晰...#include #include #include #include #include #include #include #include #include #define原创 2013-06-06 17:13:39 · 753 阅读 · 0 评论 -
POJ 3249 Test for Job(拓扑排序)
题意:求从入度为0的点到出度为0的点的路上的权值最大之和。思路:拓扑排序,注意,孤立点。#include #include #include #include #include #include using namespace std;const int N = 100009;const int M = 1000009;const int INF = 0x3f3f3f3原创 2012-08-20 15:11:51 · 481 阅读 · 0 评论 -
POJ 3687Labeling Balls(拓扑排序)
题意:重量为1-N的球放在一排,要求第a个球要比第b个球轻,满足条件之后,轻的尽量靠左。。如果没有DISCUSS里的数据,我连题意都看不懂,,,,数据:25 45 14 21 32 310 54 18 17 84 12 8ans:2 4 5 3 1 逆向建图5 1 6 2 7 8 3 4 9 10 没有判重边的话就输出 -1原创 2012-08-20 17:10:56 · 512 阅读 · 0 评论 -
南开 2216: Boring Game (排序)
Alice 和 Bob 是经常出现在一类叫“博奕问题”中的无聊玩家,因为他们很喜欢玩游戏,而这些游戏大都很无聊而且他们总会想让你帮忙判断输赢。出于某种神秘的原因你最好是能帮他们……他们接下来要玩的一个无聊的游戏是这样的:一张纸上不知道谁画了 N (4 <= N < 1000)个点在上面,Alice 和 Bob 轮流在纸中各取一个点,Alice 先取。游戏一共进行两轮,结束后按照选取次序连接原创 2013-04-10 21:00:13 · 702 阅读 · 0 评论 -
HDU 1698 Just a Hook(线段树)
到notonlysuccess.com刷线段树博客.#include #include #include #include #include #include #include #include #include #define LL long long#define DB double#define SF scanf#define PF printf#def原创 2013-06-11 10:09:17 · 579 阅读 · 0 评论 -
POJ 3481 Double Queue
两个优先队列:#include #include #include #include #include #include #include #include #include #define LL long long#define DB double#define SF scanf#define PF printf#define N 1000009using nam原创 2013-06-05 20:08:32 · 829 阅读 · 0 评论 -
POJ 2442 Sequence (手写堆)
我晕啊,我的堆都是手写的,用的时间还是438ms ,他们的100+ms 是怎么写出来的啊...写一个最小堆,想死的心都有了..各种错..#include #include #include #include #include #include #include #include #include #define LL long long#define DB doub原创 2013-06-05 22:52:10 · 1215 阅读 · 0 评论 -
POJ 1521 Entropy(哈夫曼树)
题意:球把一个字符串用哈夫曼编码表示所需要的二进制位数。及压缩比。用并查集查是否在统一棵树上。#include #include #include #include #include #include #include #include #include #define LL long long#define DB double#define SF scanf#de原创 2013-06-16 10:04:30 · 791 阅读 · 0 评论 -
POJ 1703 Find them, Catch them(并差集)
带关系的并差集.#include #include #include #include #include #include #include #include #include #define LL long long#define DB double#define SF scanf#define PF printf#define N 100009using nam原创 2013-06-06 14:58:51 · 615 阅读 · 0 评论 -
POJ 2155 Matrix (树状数组,区间更新转成点更新)
看了大牛的博客才有思路的,,太撮了..#include #include #include #include #include #include #include #include #include #define LL long long#define DB double#define SF scanf#define PF printf#define N 1009原创 2013-06-06 21:11:52 · 536 阅读 · 0 评论 -
红黑树-C语言实现
红黑树的c语言实现。原创 2013-12-09 13:04:59 · 4220 阅读 · 0 评论