随笔分类 - 学习
摘要:dijkstra算法 是一种单源点最短路算法求出一个点到其他所有点的最短路。 给你这样的一个图,需要求出1号点到其他点的最短距离是多少。 首先我们开一个数组 d[N],d[x] 代表着从起点出发到x点的距离是多少。 开一个数组vis[N], vis[x]数组代表着某个点d[x]是不是成为定值,不会再
阅读全文
摘要:转自仓鼠大神的博客 1.快速幂求法 费马小定理(a和p互质) a^(p-1) ≡1 (mod p) a^(p-2) ≡ inv(a) (mod p) 1 LL pow_mod(LL a, LL b, LL p){//a的b次方求余p 2 LL ret = 1; 3 while(b){ 4 if(b
阅读全文
摘要:String Set Queries 题意:给你3种操作,1、加入一个串到集合中。 2、删除集合中的某一个串 3、查询集合中的字符串在给定的字符串种出现几次。(同一个串可重复) 解法:建立多个AC自动机,用二进制分组来处理。 加入给你21个串: 分为 16+4+1,再添加一个串的时候,即21+1,
阅读全文
摘要:线段树原理 线段树是一颗二叉树,他的每个节点对应的都是一个区间,主要是通过对区间的分割和合并来修改节点的值, 然后再得到答案。 现在给你一个 目的为求区间和 所造出来的线段树 线段树。如下图所示。 仔细观察,第一二三行方框内的值是他的下面2个子区间的和, 第四行的方框内的数字代表的是自身的值, 蓝色
阅读全文
摘要:中国剩余定理不互质情况下 POJ-2891 参考博客:http://yzmduncan.iteye.com/blog/1323599/ https://www.cnblogs.com/linyujun/p/5199415.html 中国剩余定理不互质的情况下就是相当于把某个表达式通过另外的表达式表达
阅读全文
摘要:1 int c[N]; 2 int topo[N], t; 3 bool dfs(int u) 4 { 5 c[u] = -1; 6 for(int i = head[u]; ~i; i = e[i].to) 7 { 8 if(c[i] < 0) return false; 9 else if(!c[i] ...
阅读全文
摘要:HDU-1255 首先感谢一下 Titanium:http://acm.hdu.edu.cn/showproblem.php?pid=1255 从他的博客中得到了思路 怎么计算出重复的面积。 遇到这个求相交矩形的面积的时候,我第一反应就是将cnt标记下推,然后每次都将标记下推, 最后根据cnt的值来
阅读全文
摘要:逆序对的定义:长度为n的数组a,求满足i<j时a[i]>a[j]条件的数对个数。 第一次接触这种问题的人可能是更先想到的是n^2去暴力数前面有几个比他大的数。 n^2算法就是数一下前面有多少个数比现在这个数大 这样全部跑完只后就是逆序数了。 其中重点是 前面有多少个数比现在这个数大 但是每次从1 f
阅读全文

浙公网安备 33010602011771号