![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
acm专题
文章平均质量分 69
专题的学习笔记什么的qwq
风浔凌
南方科技大学在读学生qwq
展开
-
ACM模板 | 学习笔记 数据结构相关
并查集并查集保证时间复杂度一般是两种方法。一种是路径压缩,一种是启发式和并。路径压缩一般是在回溯的时候修改每个节点的父节点,让他们直接指向根,所以之后再寻找树根的时候,时间复杂度是反阿克曼函数(可视作一个很小的常数)。但是这种方法会破坏树的结构,损失掉一些信息。inline int find(int x){ if(x == fa[x]) return x; else return fa[x] = find(fa[x]);}启发式合并是记录一下当今合并的每个树的深度,每次合并的时候小的往大的上原创 2021-04-03 12:17:08 · 165 阅读 · 1 评论 -
ACM模板 | 学习笔记 数学相关
正在整理中qwq线性筛素数(欧拉筛)#include<iostream>#include<cstdio>#include<cmath>#include<algorithm>#include<cstring>#define MAXN 10000010using namespace std;int cnt,n,m;int not_prime[MAXN],prime[MAXN];inline void init(){ not_pr原创 2021-02-09 13:16:06 · 131 阅读 · 0 评论 -
ACM模板 | 学习笔记 树相关
持续更新中qwq 咕咕咕1 最小生成树切割性质 假定所有边权均不相同。设S为既非空集也非全集的V的子集,边e是满足一个端点在S内,另一个端点不再S内的所有边中权值权值最小的一个,则图G的所有生成树均包含e。回路性质。假定所有边权均不相同。设C为图G的任意回路,边e是C上权值最大的边,则图G的所有生成树均不包含e。1.1 增量最小生成树从包含的n个点的空图开始,依次加入m条带权边。每加入一条边,输出当前图中最小生成树权值(如果当前图不联通,输出无解)。如果加入一条边(u,v)后,图中恰好包含一原创 2021-02-17 19:18:12 · 245 阅读 · 1 评论 -
C++ STL常见用法(set,map,queue,priority_queue,deque,vector)
setset遍历 set<int>s; for(set<int>::iterator it = s.begin(); it != s.end(); it++) printf("%d", *it);set合并 set<int>a, b; a.insert(b.begin(), b.end())set lower_bound和upper_boundlower_bound(x)返回第一个大于等于x的值的迭代器,用*可以获得该值upper_bound.原创 2021-02-15 14:06:41 · 252 阅读 · 0 评论 -
校队训练 | 数论专题
2021.2-7-2021.2-9 校队训练纪念戳周队 为啥题目这么多啊qwq 数理逻辑作业还没动呢咕咕咕 慢速补题中A-找新朋友B-GCD AgainC-Calculation 2D-GCDE-Bi-shoe and Phi-shoeF-Huge ModsG-Powers Et Al.H-Power TowerI-GCD - Extreme (II)J-Iftar PartyK-Trailing Zeroes (I)L-Efficient Pseudo CodeM-A New原创 2021-02-07 16:11:48 · 391 阅读 · 0 评论