2023年1月11日

摘要: 数位DP 1. 什么是数位DP 数位DP:对数字在位的层次上用动态规划的方法进行优化 2. 理解方式 现在有一个需求: 求给定区间 [X,Y] 中满足下列条件的整数个数:这个数恰好等于 K 个互不相等的 B 的整数次幂之和。例如,设 X=15,Y=20,K=2,B=2,则有且仅有下列三个数满足题意: 阅读全文
posted @ 2023-01-11 09:33 Huayushanchuan 阅读(37) 评论(0) 推荐(0) 编辑

2023年1月10日

摘要: 离散化 1.为什么要离散化 当数据很大的时候,以至于我们不能直接使用它的时候,就要考虑将其用另外一种形式表达,通常是将其映射为数组下标。 2.离散化本质 本质 : 映射 3.离散化步骤 (1) 将待离散化的数据存入数组 (2) 将该数组排序、去重 (3) 用二分函数进行区间映射,返回相应下标 注意: 阅读全文
posted @ 2023-01-10 19:56 Huayushanchuan 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 区间合并 区间合并,顾名思义,就是将一系列能合并的区间合并 核心代码 void merge(vector<PII>&segs) { int st = 2e9, ed = -2e9; vector<PII> res; sort(segs.begin(), segs.end()); //注意,(st, 阅读全文
posted @ 2023-01-10 19:55 Huayushanchuan 阅读(19) 评论(0) 推荐(0) 编辑

2023年1月4日

摘要: #include<iostream> using namespace std; const int N=1e5+4; int p[N]; 核心代码:寻找祖宗节点+路径压缩 int find(int x) | { | if(p[x]!=x) p[x]=find(p[x]); | return p[x] 阅读全文
posted @ 2023-01-04 08:28 Huayushanchuan 阅读(11) 评论(0) 推荐(0) 编辑