随笔分类 - 模板
摘要:用vector: 用结构体,速度比vector快。 同一个题目,左边是用结构体算出来的时间,右边是用vector算出来的时间。
阅读全文
摘要:加法: 减法: 乘法: 1 std::string StringMul(const std::string& left, const std::string& right) { 2 bool flag1 = (left[0] == '-'), flag2 = (right[0] == '-'); 3
阅读全文
摘要:string strmultiply(string str1,string str2) { string strresult=""; int a[1000]={0}; int len1=str1.length(); int len2=str2.length(); int i,j; for(i=0;i=0;i--) { if(0!=a[i]) break; } for(j=i...
阅读全文
摘要:斐波那契数列的定义如下: F(0) = 0 F(1) = 1 F(n) = F(n - 1) + F(n - 2) (n >= 2) (1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, ...) 给出n,求F(n),由于结果很大,输出F(n)
阅读全文
摘要:double EPS = 1e-10; double add(double a,double b) { if(abs(a+b) < EPS * (abs(a) + abs(b))) return 0; return a + b; } struct Point{ double x, y; Point(){} Point(double x, double y)...
阅读全文
摘要:Island Transport Problem Description In the vast waters far far away, there are many islands. People are living on the islands, and all the transport
阅读全文
摘要:Ford-Fulkerson算法是通过深度优先搜索寻找增广路,并沿着它增广。 与之相对,Dinic算法总是寻找最短的增广路,并沿着它增广。因为最短增广路的长度在增广过程中始终不会变短,所以无需每次都通过宽度预先搜索来寻找最短增广路。 我们可以先进行一次宽度优先搜索,然后考虑由进距离顶点指向远距离顶点
阅读全文
摘要:最大流问题: 管道网络中每条边的最大通过能力(容量)是有限的,实际流量不超过容量。 最大流问题(maximum flow problem),一种组合最优化问题,就是要讨论如何充分利用装置的能力,使得运输的流量最大,以取得最好的效果。 最大流问题: 管道网络中每条边的最大通过能力(容量)是有限的,实际
阅读全文
摘要:sa[i] 表示排名第i的是前缀str(sa[i]), rank[i]表示前缀str(i)的排名。
阅读全文
摘要:推导过程推荐看这篇: KMP模板: 推导详细过程推荐看这篇,通俗易懂: 扩展KMP模板: 这个推导过程较简单,网上很多博客都可以快速看懂的。 Manacher模板:
阅读全文
摘要:dijistra模板 优化的dijistra模板: Floyd模板,由于复杂度太大,很少用:
阅读全文
摘要:1 #include 2 using namespace std; 3 const int N = 1e4; 4 void factorial(int n){ 5 int a[N]; 6 a[0] = 1; 7 int res = 0; 8 for(int i = 1; i 0){ 16 a[++res] = flag;...
阅读全文
摘要:1 #include 2 #include 3 using namespace std; 4 #define MAX 10005 5 6 struct bigint 7 { 8 char num[MAX]; 9 int flag; // 1:positive -1:negative 10 int dgts; 11 b...
阅读全文
摘要:prim模板: kruscal模板 使用优先队列的kruscal模板
阅读全文