该文被密码保护。 阅读全文
posted @ 2024-11-19 21:52 White_Way 阅读(3) 评论(0) 推荐(0)
摘要: 很经典但是很好的题目。/qiang 标签:线段树。 数轴上有一些关键点,不同的关键点可能在同一坐标。关键点的坐标均为整数。 支持两种操作: 删去 / 添加一些关键点。 取一个点。使得它与 \([l, r]\) 范围内所有关键点的距离最小。求最小距离。 \(\text{关键点的坐标数}\le 3\ti 阅读全文
posted @ 2024-10-09 21:42 White_Way 阅读(31) 评论(0) 推荐(0)
摘要: cnblogs 好题。爱做。 标签:二分。 求最大的最小值,考虑二分答案。然后问题就转化成了(求 \(n\) 次):有两种物品,每种物品有一个代价和价值,求获得不少于给定价值所需的最小代价。 下文记物品的代价为 \(w\),价值为 \(v\),所拿的数量为 \(cnt\)。 假设有两种物品 \(S\ 阅读全文
posted @ 2024-10-06 09:56 White_Way 阅读(54) 评论(0) 推荐(0)
摘要: P9912 [COCI 2023/2024 #2] Zatopljenje - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 线段树。 离线处理询问,将询问的高度从大到小排序,每次往线段树中加入高度大于当前询问高度的点,然后做一遍区间连续段个数就可以了。code: #include  阅读全文
posted @ 2024-09-21 11:29 White_Way 阅读(14) 评论(0) 推荐(0)
摘要: 赛时脑抽了没写出来。赛后一听说是 DP 就秒了 /wul 为方便,我们用数字代替字母,用 \(1\) 表示石头(R),\(2\) 表示剪刀(S),\(3\) 表示布(P)。同时定义函数 \(\text{ne}(j) = j \mod 3 +1\),则有 \(\text{ne}(a) = b \Lef 阅读全文
posted @ 2024-08-04 08:22 White_Way 阅读(41) 评论(0) 推荐(0)
摘要: 经典题。tag:数状数组。 开一个权值树状数组,从左往右遍历,统计左边比 \(y_i\) 小的数字个数 \(ul_i\) 与比 \(a_i\) 大的数字个数 \(dl_i\);然后从右往左遍历,统计右边比 \(y_i\) 小的数字个数 \(dr_i\) 与比 \(a_i\) 大的数字个数 \(ur_ 阅读全文
posted @ 2024-07-04 10:58 White_Way 阅读(42) 评论(0) 推荐(0)
摘要: 怎么赛时连这道都不会了 /ll 注意到输入是个排列,这意味着我们可以直接确定每个元素应在的位置。 考虑维护每个数当前所在的位置 \(\{p\}\)。对于任意 \(i \in [1, n]\),我们访问 \(p_i\),如果该位置不为第 \(i\) 位便对排列中第 \(i\) 位的数 \(j\) 和 阅读全文
posted @ 2024-04-23 18:31 White_Way 阅读(51) 评论(0) 推荐(0)
摘要: 基础 二分答案 int find1(int x) { int l = 1, r = n; while(l < r) { int mid = (l + r) >> 1; if(check(mid)) l = mid + 1; else r = mid; } return l; } // l:第一个不满 阅读全文
posted @ 2024-04-22 14:18 White_Way 阅读(30) 评论(0) 推荐(0)
摘要: P6492 [COCI2010-2011#6] STEP - 洛谷 题目大意:维护一段 01 串,支持单点修改,每次修改后求最长的「\(\texttt{01010101}\dots\)」 的长度。 下文把 「\(\texttt{01010101}\dots\)」称为「合法区间」,\(k\) 为区间 阅读全文
posted @ 2024-04-22 14:11 White_Way 阅读(77) 评论(0) 推荐(0)
摘要: P1168 中位数 - 洛谷 很巧妙的一个题,自己没想出来。 用一个「对顶堆」来维护,即一个大根堆和一个小根堆。保证大根堆的队首 \(\le\) 小根堆的队首,并使他们的堆中元素的个数尽量相等。 操作如下: 每次加入一个元素时,如果这个数比大根堆的队首大,就加入小根堆;否则加入大根堆。 比较两个堆中 阅读全文
posted @ 2024-04-22 14:10 White_Way 阅读(57) 评论(0) 推荐(0)