04 2016 档案
增广路算法 (最大流问题)
摘要:Edmonds-Karp算法: 计算机科学中, Edmonds–Karp算法通过实现Ford–Fulkerson算法来计算网络中的最大流,其时间复杂度为O(V E2). 该算法由Yefim (Chaim) Dinic 在1970年最先提出并由Jack Edmonds和Richard Karp 在19
阅读全文
最短路算法 (bellman-Ford算法)
摘要:贝尔曼-福特算法与迪科斯彻算法类似,都以松弛操作为基础,即估计的最短路径值渐渐地被更加准确的值替代,直至得到最优解。在两个算法中,计算时每个边之间的估计距离值都比真实值大,并且被新找到路径的最小长度替代。 然而,迪科斯彻算法以贪心法选取未被处理的具有最小权值的节点,然后对其的出边进行松弛操作;而贝尔
阅读全文
Educational Codeforces Round 10
摘要:A:Gabriel and Caterpillar 题意:蜗牛爬树问题;值得一提的是在第n天如果恰好在天黑时爬到END,则恰好整除,不用再+1; #include <iostream> #include <algorithm> #include <stdlib.h> #include <time.h
阅读全文
树状数组(搬运自维基百科)
摘要:树状数组(Fenwick_tree),最早由Peter M. Fenwick于1994年以A New Data Structure for Cumulative Frequency Tables为题发表在SOFTWARE PRACTICE AND EXPERIENCE。其初衷是解决数据压缩里的累积频
阅读全文
数位DP (51nod)
摘要:题目:数字1的数量 思路:首先考察不同位数以内的所有整数出现1的次数,例如四位数以内[0,9999],个十百千位均有可能出现1, 出现1的时候,其它三个位均可以是0~9,所以假设固定一个位为1,另外三个位的可能性是10*10*10 所以总共出现4*10*10*10 = 4000次1,所以一个完整的k
阅读全文
STL之map应用 +hash表(51nod 1095)
摘要:题目:Anigram单词 题意:给出词典,再给出一些单词,求单词的Anigram数量。 思路:先将字串转换成哈希表,然后再用map链接。 hash表构造方法汇总:http://www.cnblogs.com/gj-Acit/archive/2013/05/06/3062628.html 此题使用除留
阅读全文
树状DP (poj 2342)
摘要:题目:Anniversary party 题意:给出N各节点的快乐指数,以及父子关系,求最大快乐指数和(没人职员愿意跟直接上司一起玩); 思路:从底向上的树状DP; 第一种情况:第i个员工不参与,F[i][0] += max(F[k][1], F[k][0]);(k为i的儿子) 第二种情况:第i个员
阅读全文
简单DP(51nod 1092)
摘要:题目:回文字符串 思路:找准状态以及决策,就可以了; 形如:E[i,j]=opt{D[i-1,j]+xi,D[i,j-1]+yj,D[i-1][j-1]+zij} (最长公共子序列) 变形即可; dp[i][j]是第i位置开始长度为j的最小添加的字符串的数量;
阅读全文