woc,今天已经是day -1了 再写一颗珂朵莉树来++rp吧 否则就要AFO了qaq 这有可能是我最后一篇题解/博客qaq 原题传送门:P3740 [HAOI2014]贴海报 考前刷水题到底是对还是错qaq 反正这题是很水 前置芝士:珂朵莉树 窝博客里对珂朵莉树的介绍 没什么好说的自己看看吧 每贴一张海报暴力assign_val 最后用桶排思想统计一下即可 #pragma GCC optimize("O3") #include <bits/stdc++.h> #defin…
线段树版的海报 实际上这个与普通的线段树相差不大,只是貌似数据太水,暴力都可以过啊 本来以为要离散的,结果没打就A了 #include<iostream> #include<cstdio> #include<cstring> using namespace std; const int Max=40000001; struct Node{ int x,y,id; }node[10001]; int n,m,sum[Max],lazy[Max],tot[1001]; vo…
线段树版的海报 实际上这个与普通的线段树相差不大,只是貌似数据太水,暴力都可以过啊 本来以为要离散的,结果没打就A了 #include<iostream> #include<cstdio> #include<cstring> using namespace std; const int Max=40000001; struct Node{ int x,y,id; }node[10001]; int n,m,sum[Max],lazy[Max],tot[1001]; vo…
据说某谷数据十分水...但幸好BZOJ上也过了...话说我记得讲课时讲的是奇奇怪怪的离散化..但现在突然觉得什么都可以线段树瞎搞了...QAQ 直接就是这个区间有没有被覆盖,被覆盖直接return: 如果出现修改,那么就说明它能被看见,++ans 短的一批的线段树(去了不必要的操作码量还是很小的...) #include<cstdio> #include<iostream> #define R register int #define ls (tr<<1) #defin…
http://poj.org/problem?id=2528 题目大意是市长竞选要贴海报,给出墙的长度和依次张贴的海报的长度区间(参考题目给的图),问最后你能看见的海报有几张 就是有的先贴的海报可能会被后贴的海报完全盖住,那就看不见了 这里就非常抽象的区间更新,墙的长度为建立线段树的总区间,每贴一张海报代表将这个区间的颜色涂为相应的,每张海报的颜色当然 都不相同,求最后又多少种颜色就行,但这里还要用到基础的离散化 离散化是把无限空间中无限的个体映射到有限的空间中去,以此提高算法的时空效率. 简单…
题目描述 Bytetown城市要进行市长竞选,所有的选民可以畅所欲言地对竞选市长的候选人发表言论.为了统一管理,城市委员会为选民准备了一个张贴海报的electoral墙. 张贴规则如下: electoral墙是一个长度为N个单位的长方形,每个单位记为一个格子: 所有张贴的海报的高度必须与electoral墙的高度一致的: 每张海报以“A B”表示,即从第A个格子到第B个格子张贴海报: 后贴的海报可以覆盖前面已贴的海报或部分海报. 现在请你判断,张贴完所有海报后,在electoral墙上还可以看见…
题目描述 Bytetown城市要进行市长竞选,所有的选民可以畅所欲言地对竞选市长的候选人发表言论.为了统一管理,城市委员会为选民准备了一个张贴海报的electoral墙. 张贴规则如下: electoral墙是一个长度为N个单位的长方形,每个单位记为一个格子: 所有张贴的海报的高度必须与electoral墙的高度一致的: 每张海报以“A B”表示,即从第A个格子到第B个格子张贴海报: 后贴的海报可以覆盖前面已贴的海报或部分海报. 现在请你判断,张贴完所有海报后,在electoral墙上还可以看见…
题目描述 Bytetown城市要进行市长竞选,所有的选民可以畅所欲言地对竞选市长的候选人发表言论.为了统一管理,城市委员会为选民准备了一个张贴海报的electoral墙. 张贴规则如下: electoral墙是一个长度为N个单位的长方形,每个单位记为一个格子: 所有张贴的海报的高度必须与electoral墙的高度一致的: 每张海报以“A B”表示,即从第A个格子到第B个格子张贴海报: 后贴的海报可以覆盖前面已贴的海报或部分海报. 现在请你判断,张贴完所有海报后,在electoral墙上还可以看见…
题解 一开始想到离散化,然后暴力模拟.但是存在一种hack数据: [5,7] [1,5] [7,9] 这样会错误的认为第一个区间被覆盖了(因为两个端点被覆盖).所以我们设置一个玄学调参系数,在一个区间的内部,rand几个点,属于这个区间. 这个系数一般来讲设为5就可以了. 代码如下: #include<cstdio> #include<algorithm> #include<cstdlib> const int maxn = 1e5+10; int n,m; int x…
传送门 Description Bytetown城市要进行市长竞选,所有的选民可以畅所欲言地对竞选市长的候选人发表言论.为了统一管理,城市委员会为选民准备了一个张贴海报的electoral墙. 张贴规则如下: electoral墙是一个长度为N个单位的长方形,每个单位记为一个格子: 所有张贴的海报的高度必须与electoral墙的高度一致的: 每张海报以“A B”表示,即从第A个格子到第B个格子张贴海报: 后贴的海报可以覆盖前面已贴的海报或部分海报. 现在请你判断,张贴完所有海报后,在elect…