线段树
月下独喝
这个作者很懒,什么都没留下…
展开
-
hdu 2795 Billboard(线段树单点最大值更新)
/* 本题的题意: 给定一个广告栏, 高为h 宽为 w 现在给出k个高为1 宽度为l的告示 告示只能从最高处以及最左边开始粘贴, 现在需要求出每张告示在广告栏第几行进行粘贴。 (最高处为第一行) 本题思路: 暴力超时的思想, 设定一个一维数组,长度为h ,里面的值为w, 每输入一个l,就从左到右扫描一次 代码,观察数组的容量是否足够 容纳具体的值 本题可以利用线段树思想, ...原创 2019-12-02 22:26:17 · 199 阅读 · 0 评论 -
hdu 1698 Just a Hook(线段树区间更新)
http://acm.hdu.edu.cn/showproblem.php?pid=1698 /* 本题题意 给定 t 组测试用例, 每组测试用例给定长度为n 的分数, 每个分数的初始值为1, 给定m组查询方法 查询方法 包括更新一个区间的分数为 1(铜钩子的分数), 或者 2(银钩子的分数) 或者 3(金钩子的分数), 最后需要输出整个 区间的值 本题思...原创 2019-12-02 21:32:34 · 158 阅读 · 0 评论 -
线段树求对应数组区间的大小
构建线段树用了分治的思想 线段树查询数组中值的大小 //求数组对应区间值的大小 #include<bits/stdc++.h> int const maxsize = 1000; void build_tree(int arr[],int tree[],int node,int start,int end){ //创建线段树 if(start==end){ tree...原创 2019-05-03 00:00:20 · 221 阅读 · 0 评论 -
hdu 1394 Minimum Inversion Number(线段树,数学)
http://acm.hdu.edu.cn/showproblem.php?pid=1394 /* 本题题意就是: 给定多组测试用例 给定一个长度n的数组, 该数组包含的值为 0 - n - 1 , 现在如果每次都要将数组最左边的一位值拼接到 最右边,直到回到原数组, 现在需要求出 所有置换的 最小的逆序对 本题思路: 首先需要直到什么是逆序对: ...原创 2019-11-28 12:46:42 · 166 阅读 · 0 评论 -
I Hate It(线段树模板)
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1754 线段树模板题 本题题意: 有多组测试数据, 给定长度为n的小组, 并且给定m个查询条件, 查询条件有 给定 c a b 1.如果c 为Q 表示 查找在a, b区间内最大的人数, 2.如果c为 U 更新区间 a小组的值为b 本题思路: 一道线段树模板题目, ...原创 2019-11-26 21:12:02 · 157 阅读 · 0 评论