上一页 1 ··· 4 5 6 7 8
摘要: 集合(set) 初始化 #list不能存入set中,可变的不能作为key s1=set() s2={1,2,3} s3=set('hello')#{h,e,l,o} s4=set([list]) #传入一个字典,然后自动就把dict中的所有key组合成一个set s5=set('name':1) # 阅读全文
posted @ 2023-10-12 17:24 White_Sheep 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 前置芝士 对顶堆 对顶堆是一种简单好用的动态维护单调区间第k大数或第k小数的数据结构。由一个大顶堆和一个小顶堆构成。 小顶堆 使用c++的STL内裤的 priority_queue<int,vector<int>,greater<int>> mi_hp,进行操作 单调区间第k大值 [problem 阅读全文
posted @ 2023-10-12 11:17 White_Sheep 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 前置芝士 Dijkstra算法 朴素法O(n^2+m) //cpp int n,m; const int N=1001; int dist[N]; bool vis[N]; int e[N][N]; int dijkstra(){ memset(dist,0x3f,sizeof(dist)); di 阅读全文
posted @ 2023-10-10 15:30 White_Sheep 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 前置芝士 Kruskal算法 先把边按照权值进行排序,用贪心的思想优先选取权值较小的边,并依次连接,若出现环则跳过此边(用并查集来判断是否存在环)继续搜,直到已经使用的边的数量比总点数少一即可。 [证明] 刚刚有提到:如果某个连通图属于最小生成树,那么所有从外部连接到该连通图的边中的一条最短的边必然 阅读全文
posted @ 2023-10-10 14:01 White_Sheep 阅读(15) 评论(0) 推荐(0) 编辑
摘要: C++高精度模板学习指南 实现高精度计数器(朴素复杂度) 学习于:OI Wiki,并总结于适合自己高精度模板 [problem description] [input] 一个形如 a <op> b 的表达式。 a、b 分别是长度不超过1000的十进制非负整数; <op> 是一个字符(+、-、* 或 /),表示运算。 整数与运 阅读全文
posted @ 2023-10-09 19:19 White_Sheep 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 约数和倍数学习指南 前置芝士 约数 约数,又称因数。整数a除以整数b(b≠0) 除得的商正好是整数而没有余数,我们就说a能被b整除,或b能整除a。a称为b的倍数,b称为a的约数。 倍数 一个整数能够被另一个整数整除,这个整数就是另一整数的倍数。 最小公倍数和最大公约数的联系 设\(a=p_{1}^{ka_{1}}p_{ 阅读全文
posted @ 2023-10-09 13:04 White_Sheep 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 前置芝士 一个图中包含n个点n条边,且图中只存在一个环,这样的图被称为基环树(环套树)。 基环树比树多了一条边,从而形成了一个环。基环树可以看做以坏点为根的一颗颗子树构成。 三大分类 基环无向图 基环内向图(每个点有且只有一条出边) 基环外向图(每一个点只有一条入边) [解题步骤] 深搜找环。 断环 阅读全文
posted @ 2023-10-08 12:49 White_Sheep 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 前置芝士 乘法逆元 a存在模p的乘法逆元的充要条件是gcd(a,p)=1,即a与p互质。 若a,b不互素,则a必然不存在模b的逆元。 0没有逆元 余数性质 如果a,b除以m的余数相同,那么a与b的差是m的倍数。(作差是为了消掉余数) 剩余类 给定一个正整数 n,把所有整数根据模 n的余数 r∈[0, 阅读全文
posted @ 2023-10-07 10:45 White_Sheep 阅读(56) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8