摘要:
链接: 洛谷 题目大意: 对一个字符串区间升降排序。 正文: 本题与 【Luogu P2824】[HEOI2016/TJOI2016]排序 有异曲同工之妙。这种升降排序的问题,可以通过维护每个字符在某位置是否有值,通过区间修改区间求和可以改变位置。 比如字符串 \(s=\{\texttt{a,e,c 阅读全文
摘要:
链接: 洛谷 题目大意: 二维区间第 \(k\) 小。 正文: 就是区间第 \(k\) 小的升维版,详见 区间第 \(k\) 小。 代码: const int N = 510 + 10, M = 6e4 + 10, P = 25e4 + 10; inline ll Read() { ll x = 0 阅读全文
摘要:
思路: 设 \([l,r],[L,R]\) 分别为答案的值域和定义域。整体二分的过程中像主席树一样按时间顺序存入数组分治: 先找到当前答案与 \(mid\) 之间的关系,并分类。 分好类,以其作为下一层分治的数组。 例题: 区间第k小: 题目:Luogu P3834 【模板】可持久化线段树 2(主席 阅读全文
摘要:
#include <cmath> #include <queue> #include <vector> #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #define ZYC using #d 阅读全文
摘要:
链接: 洛谷 题目大意: 每次询问给定一个区间 \([L,R]\) ,输出 \(a_{[L,R]}\) 的最大公因数。 正文: ST 表板子题。 代码: const int N = 1000010; inline ll Read() { ll x = 0, f = 1; char c = getch 阅读全文