线段树
oopslb
这个作者很懒,什么都没留下…
展开
-
hdu1255覆盖的面积
覆盖的面积Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6441 Accepted Submission(s): 3275Problem Description给定平面上若干矩形,求出被这些矩形覆盖过至少两原创 2017-11-28 19:52:22 · 108 阅读 · 0 评论 -
2018 牛客多校第一场 J(线段树)
题目题意:给你n个数字,给你查询l,r,让你得出1-l 加上r-n里不同的数有几个。思路:直接把1-n的数字再重新连接到1-n后面,这样你只要求解[r,l+n]的区间不同个数,但是如果l比r大的话,就是求整个区间。预处理完后,再用线段树操作。代码:#include<iostream>#include<algorithm>#include<cstr...原创 2018-07-22 18:46:21 · 199 阅读 · 0 评论 -
2018 牛客多校五 F take(线段树)
https://www.nowcoder.com/acm/contest/143/F题意:一个人依次按顺序打开1-n号宝箱。若宝箱里有一颗比他手上还大的钻石,他会换走。给你宝箱i里Di大的钻石出现的几率是Pi,问你交换的期望。思路:总期望就是每个宝箱被交换期望之和,因为只有箱子里的钻石比手中的钻石大才会被交换,如果假设我们手中的钻石是最后的钻石的话,那么比后面箱子里比他手中大的钻石都是不可...原创 2018-08-04 16:50:09 · 145 阅读 · 0 评论 -
hdu 6356 Glad You Came(线段树)
http://acm.hdu.edu.cn/showproblem.php?pid=6356题意:给你3*m个数的生成规则,用来生成m个区间和对应的值,将区间内小于此值的改为此值.问最后所有值乘对应位置的异或值. 思路:直接线段树区间更新,不要懒惰标记也不要建树,发现不用memset初始,反而跟快。 代码:#include<bits/stdc++.h>usi...原创 2018-08-09 23:44:18 · 148 阅读 · 0 评论 -
2018 牛客多校第六场 I Team Rocket (线段树)
https://www.nowcoder.com/acm/contest/144/I题意:n个区间[l,r],m个操作:给数b,删去包含点b^res的区间,记录每个区间i第几次操作时被删去,每次操作删去的区间数。 res是上次删除的区间编号的乘积%998244353,如果上次未删区间,即res为0。思路:我们可以将线段按照l来排序,然后再来构造线段树,找到区间右端点的最大值,如果...原创 2018-08-10 23:15:02 · 269 阅读 · 0 评论 -
2018 牛客多校第五场 subseq (线段树+离散)
https://www.nowcoder.com/acm/contest/143/H 题意:给定一个序列 a[1..n],求下标字典序第 k 小的严格递增子序列 思路:先用线段树预处理好以a[i]为开头的严格递增子序列有多少个,主要数据会爆long long,取1e18即可,然后再找到第k小的那一组,如果找不到输出-1. 代码:#include<bits...原创 2018-08-11 19:07:55 · 211 阅读 · 0 评论 -
2018 牛客多校第五场 I vcd (线段树+离散)
https://www.nowcoder.com/acm/contest/143/I 题意:n个点,一个点集S是好的,当且仅当对于他的每个子集T,存在一个右边无限延长的矩形,使的这个矩形包含了T,但是和S-T没有交集。求有多少个这种集合。思路:对于S=1肯定是个好的集合对于S=2,只要y坐标不相同也肯定是好的。对于S=3,三个点的形状必须是 < 型至于S>...原创 2018-08-11 19:18:56 · 163 阅读 · 0 评论 -
hdu 6430 Problem E. TeaTree (合并线段树)
http://acm.hdu.edu.cn/showproblem.php?pid=6430 题意:一棵树上每个节点权值为v[i],每个节点的heard值是:以它为LCA的两个节点的GCD的最大值,要求输出每个节点的heard值 思路:因为每个点的权值不超过1e5,所以可以预处理每个点的因子,然后建n颗线段树,只要有两个节点有相同答案就维护答案,每次都把所有子节点的线段树与...原创 2018-08-27 14:30:01 · 356 阅读 · 0 评论 -
2018中国大学生程序设计竞赛 - 网络选拔赛 1010 YJJ's Salesman (线段树+dp)
http://acm.hdu.edu.cn/showproblem.php?pid=6447 题意:给你n个点,你只能向右,向下,向右下走,当你向右下走恰巧走到某个点时,你可以获得收益,问最大收益是多少思路:先离散化到1e5 * 1e5 的格点,dp[i][j]表示走到(i,j)为止的得到的最大金钱,显然dp[i][j]=max{ dp[i-1][j],dp[i][j-1],d...原创 2018-08-27 16:42:39 · 213 阅读 · 0 评论 -
2018中国大学生程序设计竞赛 - 网络选拔赛 1007 Neko's loop (线段树+循环节)
http://acm.hdu.edu.cn/showproblem.php?pid=6444题意:给出一个 n 个元素的环、可以任意选择起点、选完起点后、可以行走 m 步、每次前进 k 个单位、所走到的点将产生正或负贡献、问你一开始得准备多少才能使得初始资金加上在环上获取最大利益不少于给定的 s思路:把循环节扒出来,把m归约到循环节长度大小,然后跑长度小于某个值的最长子段和就可以了...原创 2018-08-27 21:49:01 · 216 阅读 · 0 评论 -
hdu 6315 Naive Operations (线段树)
Naive Operations Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 502768/502768 K (Java/Others) Total Submission(s): 1205 Accepted Submission(s): 500 Problem Description In a...原创 2018-07-26 10:52:45 · 179 阅读 · 0 评论 -
hdu 5700 区间交 (线段树或优先队列)
区间交Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1423 Accepted Submission(s): 543 Problem Description小A有一个含有n个非负整数的数列与m个区间。每个区间可以表示...原创 2018-07-18 14:10:52 · 149 阅读 · 0 评论 -
hdu3333Turing Tree
Turing TreeTime Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5972 Accepted Submission(s): 2138Problem DescriptionAfter inventing Tu原创 2017-11-28 19:57:31 · 164 阅读 · 0 评论 -
hdu 1264 Counting Squares
Counting SquaresTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2198 Accepted Submission(s): 1102Problem DescriptionYour inpu原创 2017-11-27 22:32:20 · 276 阅读 · 0 评论 -
hdu1255覆盖的面积
覆盖的面积Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6787 Accepted Submission(s): 3449Problem Description给定平面上若干矩形,求出被这些矩形覆盖过至少两次的区域的面积. Inp...原创 2018-03-20 23:30:23 · 131 阅读 · 0 评论 -
hdu1828Picture
Picture Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5835 Accepted Submission(s): 2765Problem DescriptionA number of rectangular posters, ...原创 2018-03-20 23:34:56 · 148 阅读 · 0 评论 -
hdu 3333 Turing Tree
Turing TreeTime Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6361 Accepted Submission(s): 2275Problem DescriptionAfter inventing Turing Tree, 3...原创 2018-07-16 13:18:45 · 103 阅读 · 0 评论 -
hdu 3450 Counting Sequences (线段树+二分)
Counting SequencesTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/65536 K (Java/Others)Total Submission(s): 2849 Accepted Submission(s): 996Problem DescriptionFor a set of sequences o...原创 2018-07-16 15:06:40 · 128 阅读 · 0 评论 -
hdu 1542 Atlantis(线段树+扫描线)
AtlantisTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 17371 Accepted Submission(s): 7056 Problem DescriptionThere are several ancie...原创 2018-07-17 14:08:58 · 164 阅读 · 0 评论 -
hdu 2665 Kth number(主席树)
Kth numberTime Limit: 15000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 15329 Accepted Submission(s): 4600 Problem DescriptionGive you a sequence ...原创 2018-07-17 14:13:58 · 75 阅读 · 0 评论 -
ACM-ICPC 2018 南京赛区网络预赛 G. Lpl and Energy-saving Lamps (线段树)
https://nanti.jisuanke.com/t/30996 题意:有n个房间,里面分别有ai盏灯需要更换,Lpl每月都会买m盏灯,如果刚好能更换一个房间就会把灯都更换掉,如果不能就会继续找下一个房间看是否能全部更换,剩余的灯就会被留到下个月使用,最后输出她每月最多能更换的房间数和所剩余的灯的数量。 思路:直接线段树找到最左边小于一个数的位置,然后把可以换的更新成...原创 2018-09-11 13:02:21 · 154 阅读 · 0 评论