二分
文章平均质量分 90
cszhpdx
欸嘿
展开
-
CF1630B Range and Partition
首先看到最小化 y−xy-xy−x 这个玩意,果断二分 y−xy-xy−x,显然假如区间更长合法,那么更短一定也合法,然后再枚举 xxx 进而得到 [x,y][x,y][x,y],接下来的事情就是要判断某一个区间 [x,y][x,y][x,y] 是否合法。我们首先把砍成 kkk 段转化为尽可能地多段,因为如果 ttt 段的分割是合法的,我们我们将最后两个区间合并,这就是 t−1t-1t−1 段了。我们将 aia_iai 重新赋值,如果 ai∈[x,y]a_i \in [x,y]ai∈[x,y] 那么原创 2022-02-03 16:23:06 · 736 阅读 · 0 评论 -
--线段树--
线段树 (Segment Tree) ,一个用来处理 RMQ、RSQ 的数据结构1. 基本思想它的思想也是非常简单,比如有一个长度为 8 的区间,我们把它分成两个长度为 4 的区间,然后对于长度为 4 的区间再分割,每个区间记录信息(比如和) ,我们把这些区间当成一棵树上的节点,对于编号为 kkk 的区间 [l,r][l,r][l,r] ,中间点为 mid=⌊l+r2⌋mid=\lfloor \dfrac{l+r}{2} \rfloormid=⌊2l+r⌋ ,子节点有编号为 2k2k2k 的区间 [l原创 2021-07-04 16:48:05 · 121 阅读 · 0 评论 -
P1663 山
这是我人生中第一道独立写出来的蓝题,今天突然想写一篇题解题意选出一个点,使得它与这座“山”上的每一个点的连线都与这座“山”没有交点解法1:暴力解题第一步,考虑暴力暴力怎么写呢?考虑枚举 yyy ,因为题目要求输出与答案的差不超过 0.01 ,所以我们把精度设为 0.01 ,这样暴力:double y=0;while(不符合条件) y+=0.01输出y那么剩下的问题就是怎么判断是否符合条件,我们可以先从下面这张图入手:很明显,y=4y=4y=4 时,蓝色部分的 xxx 是合法的,也就原创 2021-06-05 11:07:14 · 81 阅读 · 0 评论