上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 24 下一页
摘要: 题目大意:有向图求割点 题目思路: 一个点u为割点时当且仅当满足两个两个条件之一: 1.该点为根节点且至少有两个子节点 2.u不为树根,且满足存在(u,v)为树枝边(或称 父子边,即u为v在搜索树中的父亲),使得 dfn(u)<=low(v)。 然后注意读入,很容易RE #include<stdio 阅读全文
posted @ 2017-03-08 20:53 声声醉如兰 阅读(157) 评论(0) 推荐(0) 编辑
摘要: Tarjan强连通图缩点 阅读全文
posted @ 2017-03-08 20:46 声声醉如兰 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 拓展欧几里得,求出符合条件的最小整数解 #include <iostream> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <algorithm> #include <math.h> #define LL l 阅读全文
posted @ 2017-03-06 20:31 声声醉如兰 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 拓展欧几里得:求直线ax+by+c=0上有多少个整数点(x,y)满足x1<x<x2,y1<y<y2. exgcd代码 通过exgcd求出一直特解(x0,y0) 则任意整数解都可以写成(x0+kb',y0-ka')k取任意整数 若c不是gcd(a,b)的整倍数时无整数解 阅读全文
posted @ 2017-03-06 20:29 声声醉如兰 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 题目大意:优化以下程序 G=0;for(i=1;i<N;i++)for(j=i+1;j<=N;j++){G+=gcd(i,j);} return G 题目思路: 1.建立递推关系,s(n)=s(n-1)+gcd(1,n)+gcd(2,n)+……+gcd(n-1,n); 2.设f(n)=gcd(1,n 阅读全文
posted @ 2017-02-23 20:40 声声醉如兰 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 题目大意:对下列代码进行优化 long long H( int n ) { long long res = 0; for( int i = 1; i <= n; i++ ) res = res + n / i; return res;} 题目思路:为了避免超时,要想办法进行优化 以9为例: 9/1 阅读全文
posted @ 2017-02-21 21:08 声声醉如兰 阅读(139) 评论(0) 推荐(0) 编辑
摘要: dp[i][j] 表示第一个字符串前i位 和 第二个字符串前j位的最长公共子序列 阅读全文
posted @ 2017-02-13 22:15 声声醉如兰 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 题目思路:状态转移方程很好推出,值得注意的是要分别判断是否能从一个平台的某侧移动到另一平台,也就是说要判断过一个平台的左端点或右端点做垂线,看这条垂线是否经过其他平台。 #include<stdio.h> #include<string.h> #include<stdlib.h> #include< 阅读全文
posted @ 2017-02-13 20:29 声声醉如兰 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 斐波纳契博弈: 有一堆个数为n的石子,游戏双方轮流取石子,满足: 1)先手不能在第一次把所有的石子取完; 2)之后每次可以取的石子数介于1到对手刚取的石子数的2倍之间(包含1和对手刚取的石子数的2倍)。 约定取走最后一个石子的人为赢家,求必败态。 证明 FBI数为必败局: 1.对于任意一个FBI数 阅读全文
posted @ 2017-01-15 09:02 声声醉如兰 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 题目思路: 对于尼姆博弈我们知道:op=a[1]^a[2]……a[n],若op==0先手必败 一个简单的数学公式:若op=a^b 那么:op^b=a; 对于第i堆a[i],op^a[i]的值代表其余各个堆值的亦或值。 我们现在希望将a[i]改变成某个更小的值使得,op^a[i]=0,反过来a[i]= 阅读全文
posted @ 2017-01-14 16:23 声声醉如兰 阅读(135) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 24 下一页