![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
角落的秋天
在财经大学读计算机的小伙子,已毕业,GitHub: https://github.com/wintercoder
展开
-
HDU 1072 Nightmare
题目http://acm.hdu.edu.cn/showproblem.php?pid=1072 题目稍长,慢慢看,原创 2014-07-24 14:25:34 · 411 阅读 · 0 评论 -
二维线段树 题集
单点更新,区间查询 POJ 1195 Mobile phones 一个二维矩阵初值为0,2个操作 1、某点(x,y)值增加val 2、查询子矩阵的和 #include #include #include #include #include #include using namespace std; #define ll long long #define rep( i原创 2015-08-07 16:33:35 · 1996 阅读 · 4 评论 -
POJ 2299 Ultra-QuickSort【求逆序数:归并排序|树状数组+离散化】
题目点这 注意答案是long long型,然后注意相同数据的情况,如 3 1 1 1应当输出0 归并排序法【nlog(n)】求解:归并过程中如果a[indexA] > a[indexB] ,那么对于a[indexB]的逆序数有 mid - indexA + 1【包含自身】,如 下标: 0 1 2 a[indexA]:3 4 5 a[indexB...原创 2014-08-13 15:26:14 · 563 阅读 · 0 评论 -
HDU 1542 & POJ 1151 Atlantis【线段树扫描线】
扫描线用于求若干个相交矩形的面积并,因为用几何方法在相交的情况复杂的时候难以计算。原创 2015-02-15 19:23:14 · 745 阅读 · 1 评论 -
HDU 4607 Park Visit【树的直径】
有N个节点,M个询问,接着给出N-1条边,求转载 2014-08-09 19:02:25 · 576 阅读 · 0 评论 -
线段树题目合集
单点更新 HDU 2795 Billboard tree[u].n表示第u棵树可用长度,初始化全为最大长度,要更新时就减去要贴上的海报长度tree[u].l 和 .r为区间,但实际只用到最底层 叶子结点 即 l == r 的结点,那些父结点只起导向作用,所以把父节点更新为左右孩子n的最大。从根起找长度足够的结点。而答案就是tree[u].l或者tree[u].r。 h再大,最原创 2015-02-05 19:31:04 · 1182 阅读 · 0 评论 -
POJ 2528 Mayor's posters【线段树+离散化】
POJ 2528 Mayor's posters 区间覆盖的情况下染色,求可见的颜色种类 对区间端点离散化后,从1开始正常线段树了,最大范围是1W了。建图的点是离散后的区间端点值 查询的时候看这个颜色有没有出现过 ,没有就计数,哈希数组仍需要开到最大 离散化是将端点排序后映射到1~...用数组s保存端点原本的坐标值 #include #include #include #inclu原创 2014-11-27 22:55:22 · 479 阅读 · 0 评论 -
HDU 1004 Let the Balloon Rise【Map】
求出现次数最多的字符串,用map的话轻松很多 it->first:map的第一个属性 it->second:第2个属性 #include #include #include #include #include #include #include #include #include #include using namespace std; #define ll l原创 2015-01-02 19:18:12 · 509 阅读 · 0 评论 -
POJ 2352 Stars【树状数组】
#include #include #include #include #include #include #include #define FOR(i,n) for(int i=0;i<(n);i++) #define ll __int64 #define NMAX 32001 using namespace std; int c[NMAX],n; int res[15002];原创 2014-08-11 01:37:32 · 448 阅读 · 0 评论 -
HDU 1242 Rescue【优先队列BFS】
#include #include #include #include #include #include #include using namespace std; #define ll long long #define INF 0x7F7F7F7F #define eps 10^(-6) #define MEM(a) memset(a,0,sizeof(a)); #define MEM_BO原创 2014-08-22 17:54:45 · 499 阅读 · 0 评论 -
HDU 1022 Train Problem I【栈】
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1022 需要注意的是:出和入不一定全出,全入 #include #include using namespace std; int main() { int i,n,j,k,way[100]; //way[i]=0表示出栈,=1为进 stacks; char str1[100],str2[100原创 2014-07-24 14:06:17 · 453 阅读 · 0 评论 -
HDU 4006 The kth great number【优先队列】
优先队列和普通队列区别在于原创 2014-07-24 13:09:30 · 473 阅读 · 0 评论 -
HDU 1412 {A} + {B}【set容器】
给你两个集合,要求{A} + {B}. 注:同一个集合中不会有两个相同的元素. Input 每组输入数据分为三行,第一行有两个数字n,m(0 Output 针对每组数据输出一行数据,表示合并后的集合,要求从小到大输出,每个元素之间有一个空格隔开. Sample Input 1 2 1 2 3 1 2 1 1 2 Sample Output 1 2原创 2014-07-24 15:06:55 · 467 阅读 · 0 评论 -
GDUFE_OJ 1077.给树的中前序遍历求后序遍历
https://hihocoder.com/problemset/problem/1049 OR 自家弱校的OJ题输入中序和前序遍历结果,求后序Sample Input:ABEDFCHG CBADEFGHSample Output:AEFDBHGC#include <cstdio> #include <cstring> #include <iostream> ...原创 2014-11-19 23:47:03 · 842 阅读 · 0 评论