会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
DyastySun
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
2018年7月25日
扩展欧几里得
摘要: 扩展欧几里得算法:对方程 ax + by = gcd(a, b) ,该算法可以找出这个方程的一对整数解 (x, y) ,这里的 x 和 y 不一定是正数,也可能是负数或零。算法代码如下: 上面的代码仅仅是可以求出方程的一组解,我们还得求出其他解,我们可以经过推导可以得出这个方程的通解为 (x+kn,
阅读全文
posted @ 2018-07-25 09:32 DyastySun
阅读(158)
评论(0)
推荐(0)
2018年7月24日
逆元
摘要: 在比赛中我们会遇到形如 (A/B)%MOD 的式子(比如说组合数学中求组合数),但是由于取模对除法没有分配律,所以我们只能乖乖的先算 A/B 再对结果进行取模吗?当A、B较小的时候还行,当A、B很大的时候就不适用了,因为A/B会丢失精度。我们可以将上述式子改写一下 (A/B)%MOD 改为 (A *
阅读全文
posted @ 2018-07-24 20:47 DyastySun
阅读(427)
评论(0)
推荐(0)
POJ 3660 Cow Contest——flody求传递闭包
摘要: 题目大意:有n头牛,两头牛之间可以进行比赛,给出m场比赛的结果,问,有几头牛的战力排名可以确定? 典型的flody求传递闭包问题,之前没仔细想,各种花式拓扑排序,没弄出来。后来才想起是flody 若一场比赛,牛a战胜了牛b,则我们建立一条从a到b的有向边。把每场比赛我们都这么统计一下,就能得到一张有
阅读全文
posted @ 2018-07-24 16:36 DyastySun
阅读(177)
评论(0)
推荐(0)
最小生成树算法
摘要: 最小生成树有两种算法:Kruskal算法 和 Prim算法 算法一:Kruskal算法 基本思想就是:每次选择目前剩余的边中的权值最小的边,若将此边加入图中,不会形成环,则可以加入图中,否则舍弃。判断是否会形成环可以使用并查集算法。 以 HDU - 1879 题为例(题目链接:https://vju
阅读全文
posted @ 2018-07-24 16:07 DyastySun
阅读(240)
评论(0)
推荐(0)
2018年7月23日
最短路练习
摘要: 算法一:Floyed算法 O(n^3) 这个算法复杂度有点高,所以我们推荐下一个算法。 算法二:Dijkstra算法 O(n^2) : 求某个结点到其它所有结点的最短路,但无法用于存在负权边的图 这个算法复杂度低一些,主要思想就是先设定起点 dis[i] = 0, mark[i] = 1; 然后对剩
阅读全文
posted @ 2018-07-23 21:20 DyastySun
阅读(229)
评论(0)
推荐(0)
2018年7月22日
UVa 11491 Erasing and Winning
摘要: 题意:给出一个n位的整数,要求删除其中的d个数字,使得剩下的部分最大化。 有简单的做法,我们可以注意到,高位对一个数字的是有绝对的影响力的,所以我们需要保证高位足够大,我们可以这样贪心求解,我们对这n个数字从前往后考虑: 若后一个数字比前一个数字大,则前面这个数字肯定需要删除,并且删除之后我们还得和
阅读全文
posted @ 2018-07-22 09:02 DyastySun
阅读(203)
评论(0)
推荐(0)
2018年7月4日
uva 1610 聚会游戏
摘要: 一般的做法就是写一堆if,但是由于题目中的限制比较多,所以陷阱也很多,很容易漏掉一些情况 这里我们采用暴力的方法去实现 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 int n, k, cnt; 5 string s0, s1, s2;
阅读全文
posted @ 2018-07-04 17:00 DyastySun
阅读(258)
评论(0)
推荐(0)
上一页
1
2
3
公告