挑战程序设计竞赛
文章平均质量分 87
你的小猫咪
这个作者很懒,什么都没留下…
展开
-
背包问题在这里!
1原创 2021-05-07 13:38:19 · 63 阅读 · 0 评论 -
再读《挑战程序设计竞赛》——出类拔萃(4)
贪心与动态规划这是我在团队负责的部分,因此本文篇幅会很长,并且网络流和计算几何会先选择性跳过,在最近的比赛结束之后再慢慢补充叙述。几种常见的贪心策略贪心策略可以通过样例去尝试,写完以后写个暴力打表比对,比对成功就可以交了,不要花功夫去证明没时间。...原创 2021-05-06 15:54:30 · 221 阅读 · 0 评论 -
再读《挑战程序设计竞赛》——出类拔萃(3)
线段树这篇文章就是线段树模板和各类用法(懒标记,扫描线,可持久化,树套树)的大杂烩。原创 2021-05-04 18:45:43 · 107 阅读 · 0 评论 -
再读《挑战程序设计竞赛》——出类拔萃(1)(2)
二分前一部分满足条件A,后一部分满足条件A的补集,求这两者的分界点。有二分性再考虑二分。从书上例题出发讨论几个模拟的小技巧原创 2021-05-03 20:36:31 · 1250 阅读 · 0 评论 -
再读《挑战程序设计竞赛》——初出茅庐(6)
简单数论问题,归根结底有这么几个:质数问题(判断、筛法、分解、分解的几个常用结论)和约数问题快速幂、矩阵快速幂gcd,exgcd(同余方程组问题) 欧拉函数逆元高等数学相关:高斯消元、组合数问题其余更加复杂的数学问题在读高级篇的时候再说讲解部分参考了《算法竞赛进阶指南》和acwing的课程。质数的判定试除法,只要除到根号n就可以了,因为两数相乘等于n,一定一个大于等于根号n,一个小于等于根号n。bool is_prime(int x){ if(x<2)原创 2021-05-02 15:29:46 · 114 阅读 · 0 评论 -
再读《挑战程序设计竞赛》——初出茅庐(5)
他们其实都是“图”图的表示不多说,数组模拟邻接表的时候,一定要初始化h数组都为-1!!!int h[N],e[N],ne[N],idx;//idx是边的编号,h是第一条边,e是这条边的终点,ne是下一条边 void add(int a,int b)//把这条边插入a引出的链表最前面 { e[idx]=b; ne[idx]=h[a]; h[a]=idx++;} //遍历for(...原创 2021-05-01 09:46:17 · 89 阅读 · 0 评论 -
再读《挑战程序设计竞赛》——初出茅庐(4)
加工并存储数据的数据结构重点平衡树(使用unordered_map,multiset,multimap),优先队列(手写堆)并查集平衡树用平衡树维护的数,集合,区间,会有一个很好的单调性,可以二分。一般用set维护平衡树(insert,find,erase,count)。用map维护键值对。//声明int为键,const char*为值map<int,const char*...原创 2020-03-29 17:11:42 · 110 阅读 · 0 评论