上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 16 下一页
摘要: 三分法求解凸函数的最值 二分法作为分治中最常见的方法,适用于单调函数,逼近求解某点的值。但当函数是凸性函数时,二分法就无法适用,这时三分法就可以“大显身手” 函数必须严格单调递减 对于如下图的一个凸函数 $ f(x),x∈[left,right] \(其中 lm 和 rm 分别为区间[left,ri 阅读全文
posted @ 2020-09-02 22:07 ke_xin 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 二分(答案) 什么情况下用二分?两个条件:上下界[a, b]确定、函数在[a, b]内单调。 整数二分 STL的lower_bound()和upper_bound() 通往奥格瑞玛的道路 最大值最小化 对点权fi进行二分(先排序),用dijkstra求最短路,检验总边权是否小于b。 #include 阅读全文
posted @ 2020-09-02 22:05 ke_xin 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 邻接矩阵 CF402E Strictly Positive Matrix 对角线之和>0 , 每个元素>=0 问是否存在$a^k$ 满足每个元素>0 题解 学过矩阵的人都知道对于本题来说整个矩阵里的元素只需要分为两种,一种是为0,一种是不为0。 这样我们就得到了一个01矩阵 转换: 邻接矩阵表示该矩 阅读全文
posted @ 2020-09-01 21:21 ke_xin 阅读(560) 评论(0) 推荐(0) 编辑
摘要: 整数划分问题 给两个整数 \(n\) 和$k$。 将 n 划分成 k 个正整数之和的划分数 n=m1+m2+...+mi; (其中mi为正整数,并且1 ⇐ mi ⇐ n),则{m1,m2,...,mi}为n的一个划分。 如果{m1,m2,...,mi}中的最大值不超过m,即max(m1,m2,... 阅读全文
posted @ 2020-09-01 20:53 ke_xin 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 差分约束 讲解 如果一个不等式组由 \(n\) 个变量和 \(m\) 个约束条件组成,形成 \(m\) 个形如$x[ j ]-x[ i ]≤k$(\(i,j∈[1,n]\) 且 \(k\) 为常数)的不等式,则称其为差分约束系统。换句话说,差分约束系统就是求解一组变量的不等式组的算法。 \(d_v- 阅读全文
posted @ 2020-09-01 16:32 ke_xin 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 二分图 博客推荐 https://oi-wiki.org/graph/bi-graph/ 黑白染色,邻点异色 二分图一定无奇环(奇环——边数点数都是奇数) 完全二分图 用kn,m表示(完全图用kn表示) 染色 判断二分图 首先任意取出一个顶点进行染色,和该节点相邻的点有三种情况: 1.未染色 那么继 阅读全文
posted @ 2020-09-01 09:09 ke_xin 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 并查集 关键操作 1.预处理 for(int i=1;i<=m;i++) fa[i]=i; 2.路径压缩O(n) int find(int x) { return x==fa[x]?x:fa[x]=find(fa[x]); } 3.merge int fx=find(a[i].x),fy=find( 阅读全文
posted @ 2020-09-01 07:22 ke_xin 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 2-sat 理解 内含三道例题hdu 2-sat图具有对称性 https://wenku.baidu.com/view/9c0afe2b3169a4517723a353.html ppt上的题 和平委员会 #include <cstdio> #include <cstring> #include < 阅读全文
posted @ 2020-08-29 21:34 ke_xin 阅读(48) 评论(0) 推荐(0) 编辑
摘要: Promotion Counting P 首先离散化 我们可以从大到小排序, 对于每一个节点,我们需要统计它的子树中比它大的节点的个数 然后建一棵权值树状数组,在递归子树之前先把大于他的减掉,递归完子树后再把新的答案加回来 #include <cstdio> #include <iostream> 阅读全文
posted @ 2020-08-28 17:29 ke_xin 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 没有去重的 for(int i=1;i<=n;i++) p[i]=read(),b[i]=i; sort(b+1,b+n+1,cmp); for(int i=1;i<=n;i++) p[b[i]]=i; int len=0; int len=0,flag=0; for(int i=1;i<=n;i+ 阅读全文
posted @ 2020-08-28 17:17 ke_xin 阅读(20) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 16 下一页