上一页 1 2 3 4 5 6 ··· 11 下一页
摘要: //上交计算几何算法 /**************************************** * COMPUTATIONAL GEOMETRY ROUTINES * WRITTEN BY : LIU Yu (C) 2003 ******************************** 阅读全文
posted @ 2021-03-27 20:26 JamZF 阅读(84) 评论(0) 推荐(0) 编辑
摘要: // 18位素数:154590409516822759 // 19位素数:2305843009213693951 (梅森素数) // 19位素数:4384957924686954497 LL prime[6] = {2, 3, 5, 233, 331}; LL qmul(LL x, LL y, LL 阅读全文
posted @ 2021-03-27 20:24 JamZF 阅读(117) 评论(0) 推荐(0) 编辑
摘要: const int MAXN = 1000005 ; int64_t mulEx(int64_t a , int64_t b , int64_t Mod) {///logn快速乘 if(!a) return 0 ; int64_t ans(0) ; while(b) { if(b & 1) ans 阅读全文
posted @ 2021-03-27 20:20 JamZF 阅读(539) 评论(3) 推荐(0) 编辑
摘要: 1. 问题 在一个排好序的数组T[1..n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0。 2. 解析 暴力查找法:从1-n循环查找x是否出现在数组中。 折半查找法:每次缩小查找的范围,最开始l=0,r=n,mid=(l+r)>>1,如果当前位置值大于x那么就往右边缩小范围 阅读全文
posted @ 2021-03-22 15:53 JamZF 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 题意:~~ 思路:题目给出的数字太少了,我们多写几个,就会发现每层最左边的值等于1.2*k(k+1) ,k代表层数,找规律发现如果一个点的坐标为2.(x,y)且|a|+|b|=k,id<=2*k*(k+1),利用这两个结论我们我们就可以解题了,如果给我们的是id,那么我们二分出该值所在层数,然后这里 阅读全文
posted @ 2021-03-17 11:12 JamZF 阅读(229) 评论(0) 推荐(1) 编辑
摘要: 1. 问题 l 用Floyd算法求解下图各个顶点的最短距离。写出Floyd算法的伪代码和给出距离矩阵(顶点之间的最短距离矩阵), l 对于下图使用Dijkstra算法求由顶点a到顶点h的最短路径。 2. 解析 Floyd算法:暴力法,dis[i][j]表示i节点到j节点的最短距离,每次遍历1-n个点 阅读全文
posted @ 2021-03-15 18:11 JamZF 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 题目大意:求一颗基环树的最小点覆盖。 题解:其实是一道比较板子的树形dp,dp[i][0/1]表示取或者不取i点的最小点。但是首先我们要把基环树断开,然后分别考虑a被覆盖和b被覆盖的情况。 dp[i][0]=∑min(dp[j][0],dp[j][1]) d p [ i ] [ 1 ] = ∑ d 阅读全文
posted @ 2021-03-14 14:46 JamZF 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 给定一个只包含七种字母的字符串,如果满足一段连续相同的字符长度大于等于K那么即可消除,问最后能不能变为空字符。 题解:很明显是用区间dp来解决,我们设dp[l][r][k]代表的是在[l,r]区间里消去其他字符后K字符的个数。如果不存在那么赋值-INF。具体细节见代码。 AC_code: 阅读全文
posted @ 2021-03-14 14:40 JamZF 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 1. 问题 给你一个N个节点M条边的无向图,每条边有一条权值。求改图的最小生成树的过程和权值。 2. 解析 求最小生成树有两种贪心算法prim和kruskal 。Prim算法是以点为核心记录起点到其他点的距离,每一步都是取图中还没有加入到最小生成树中距离最短的点加入到最小生成树种不断更新。 Krus 阅读全文
posted @ 2021-03-08 23:21 JamZF 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 题意:在一棵数的叶子上建k个工厂保证,求两两距离之和的最小值。 思路:如果一个一个叶子节点去考虑去与否太麻烦了,直接考虑该节点的子树上选取几个作为工厂,利用树形DP,dp[u][i]表示的是u节点为根的子树选取了i个叶子作为工厂的最小值。 转移方程:dp[u][i]=min(dp[u][i],dp[ 阅读全文
posted @ 2021-02-04 19:33 JamZF 阅读(77) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 11 下一页