OVSolitario-io

导航

2025年9月4日 #

杂题题单

摘要: P9064:排序,区间查找[i~i+k] 思路:排序,根据区间m查找最小ans即可 要想r-l最小,那么对于有序序列,查询l + m即l最小 对于每次删除一边差值更大元素,可能会有[1, 2, ···,51, 100](al+1-al >ar-ar-1)对于大范围不一定是最优(当前面两相邻元素差值= 阅读全文

posted @ 2025-09-04 09:57 TBeauty 阅读(5) 评论(0) 推荐(0)

二分题单

摘要: P1824 思路:两点之间最大距离 = r - l,再就是对于对于放置m个点,若条件不适会 p1612:维护路径 + 二分最长路:https://www.luogu.com.cn/problem/P1612 搜索树对于栈的一致性:维护链 思路: 模拟栈维护当前节点到root的链(进入结点加入栈,离开 阅读全文

posted @ 2025-09-04 08:34 TBeauty 阅读(7) 评论(0) 推荐(0)

2025年9月3日 #

搜索题单

摘要: 关于剪枝归纳:剪枝 P1088:求顺序 p1807:DAG跑记忆化 (DAG保证了无环存在,不用记录走过) 无环,(极限负)最长路不会低于-1.5*1e8 当i无法走到n那么它既是无解的,题目要求1~n种最长路 八皇后 阅读全文

posted @ 2025-09-03 15:25 TBeauty 阅读(5) 评论(0) 推荐(0)

2025年9月2日 #

数据结构题单

摘要: P2021:逆向思维 思路1:标号:(建立值与编号对应)跑队列,最后将标号对应到原序列 点击查看代码 #include <bits/stdc++.h> using namespace std; const int N = 1e6 + 10; int n, a[N]; queue<int> Q; in 阅读全文

posted @ 2025-09-02 17:46 TBeauty 阅读(18) 评论(0) 推荐(0)

基础思想&搜索枚举:无后效性:这个点的结果是固定的

摘要: 快读defiine大法: #define read(a) {char c;while((c=getchar())>47) a=a*10+(c^48);} 位运算:两操作类型按位 位运算应用: 状态压缩(小范围数压缩到int空间等) 取二进制数某一位:将其右移到最右边那一位&1 将二进制数设为0/1, 阅读全文

posted @ 2025-09-02 11:30 TBeauty 阅读(6) 评论(0) 推荐(0)

染色法&并查集:维护不想交集合森林(维护传递性)

摘要: 染色法 对于p1551亲戚,可并查集,这里考虑朴素染色法 通过颜色来判断是否为同一宗族,颜色相同即同一个 最开始每个人都有一个颜色,当AB为亲戚时,则要将AB染成一个颜色 复杂度:O(数学公式: $ n^{2} $),因为每次操作可能都为O(n) 这里存在的优化:启发式合并 启发式合并:每次选人少部 阅读全文

posted @ 2025-09-02 08:12 TBeauty 阅读(8) 评论(0) 推荐(0)

2025年8月29日 #

DP题单练习

摘要: P1091 [NOIP 2004 提高组] 合唱队形:P1091 [NOIP 2004 提高组] 合唱队形 思路:以dp[i]为结尾的上升子序列和以dp[i]开头的最长下降子序列,再进行求和即可 P1164 小A点菜:P1164 小A点菜 思路:dp[i]为刚好花i元的方案数 花光n元的方案数,对于 阅读全文

posted @ 2025-08-29 14:49 TBeauty 阅读(4) 评论(0) 推荐(0)

池子1

摘要: DP https://www.luogu.com.cn/problem/P1077 阅读全文

posted @ 2025-08-29 11:32 TBeauty 阅读(6) 评论(0) 推荐(0)

2025年8月28日 #

algorithm函数

摘要: sort with lambda: 对于sort自定义顺序需要手写比较函数,但其可以本身作为参数出现 sort(a, a + n, [](int a, int b) {//lambda表达式 return a > b; });//即可将a从大到小排序 但这样只能使用括号中的参数,若用b[a[i]]< 阅读全文

posted @ 2025-08-28 09:22 TBeauty 阅读(5) 评论(0) 推荐(0)

2025年8月26日 #

Set

摘要: set.lower/upper_bound(),单次logn 迭代器++/--,最坏logn,均摊(遍历一遍)O(1) 二叉排序树 对于结点u,左儿子 <= u <= 右儿子 对于12345,树为: 进行中序遍历:12345,即为set用处 Set:维护元素是否存在,查询大于等于/大于它的最小数字, 阅读全文

posted @ 2025-08-26 11:26 TBeauty 阅读(17) 评论(0) 推荐(0)