摘要: 传送门题解欧拉定理(模指数)+质因数分解(条件)->lucas定理(组合数)+中国剩余定理(合并) 要说的一点就是一定要给自己写一个好看的代码,不然就根本没办法调试,就像我原来的30分。。。 代码:#include#define ll long longusing n... 阅读全文
posted @ 2017-08-29 21:58 玫葵之蝶 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题目大意:求这个式子:∑i=0∞Cik+rnk(modp) 这道题就是个数学题,做法其实就是优化的暴力——杨辉三角矩阵加速。 可以加速的原理,其实就是杨辉三角是一个一维递推,并且可以将递推描述为:复制矩阵到一个新矩阵,然后矩阵右移一格,加到新矩阵中。 对于这个题来说就... 阅读全文
posted @ 2017-08-29 16:18 玫葵之蝶 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 模板:可并堆 可并堆真的很好写!可并堆真的很好写!可并堆真的很好写! 只有一个合并操作,插入都是用合并实现的,最多再来一个并查集,真的简单到爆好吗。。 代码:#include#define ll long longusing namespace std;const i... 阅读全文
posted @ 2017-08-28 20:48 玫葵之蝶 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 模板:割点 还是那本书,自己看。 吐槽一句:tarjan真的能干好多事儿啊QAQ 代码:#include#define ll long longusing namespace std;struct edge{ int to,next;}e[200001];int... 阅读全文
posted @ 2017-08-28 20:44 玫葵之蝶 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 模板:洛谷P3387 关于tarjan大神的算法我也只能抄抄代码了(滑稽) 其实《算法竞赛入门经典:训练指南》里有讲解,很详细。 代码:#include#define ll long longusing namespace std;vector G[10001];in... 阅读全文
posted @ 2017-08-28 20:41 玫葵之蝶 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 模板:洛谷P3385 由于DFS-SPFA可以在找到负环后及时退出,所以不会像BFS-SPFA那样TLE。 代码:#includeusing namespace std;inline void read(int &x){ x=0; int k=1; ... 阅读全文
posted @ 2017-08-28 20:37 玫葵之蝶 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 这是一种离线算法,但是时间超级快,是O(n+m)。 主要是dfs实现这个过程。 下面详细介绍一下Tarjan算法的基本思路: 1.任选一个点为根节点,从根节点开始。 2.遍历该点u所有子节点v,并标记这些子节点v已被访问过。 3.若是v还有子节点,返回2... 阅读全文
posted @ 2017-08-28 20:25 玫葵之蝶 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 此题树状数组卡常好题(滑稽)题目描述很久很久以前,在遥远的大陆上有一个美丽的国家。统治着这个美丽国家的国王是一个园艺爱好者,在他的皇家花园里种植着各种奇花异草。有一天国王漫步在花园里,若有所思,他问一个园丁道: “最近我在思索一个问题,如果我们把花坛摆成六个六角形,那... 阅读全文
posted @ 2017-08-28 20:14 玫葵之蝶 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 主席树原理就是区间内的第k大可以通过每个数字的出现次数随便乱加减搞出来,然后,就可以像前缀和那样建n个线段树,就可以查询区间第k大了! 主要问题就是空间绝对爆炸,大概n2logn左右。 看这个图:(来自blog) 可以发现每一颗线段树结构都相同,只是每次都有logn... 阅读全文
posted @ 2017-08-28 19:58 玫葵之蝶 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 此题大约为提高+的难度。题目描述在数轴上有 n个闭区间 [l1,r1],[l2,r2],…,[ln,rn]。现在要从中选出 m 个区间,使得这 m个区间共同包含至少一个位置。换句话说,就是使得存在一个 x,使得对于每一个被选中的区间 [li,ri],都有 li≤x≤r... 阅读全文
posted @ 2017-08-28 19:38 玫葵之蝶 阅读(108) 评论(0) 推荐(0) 编辑