是否可以把树上结点的编号,然后把二叉树存储在数组中呢?很遗憾如果结点在一条链上,那将是2^256个结点 所以需要采用动态结构 首先要读取结点,建立二叉树addnode()+read_input()承担这样的工作 然后遍历二叉树,读取结点编号输出bfs() 这道题有内存池应用的背景 附链接 http: ...
分类:
其他好文 时间:
2017-02-13 08:27:00
阅读次数:
229
后缀数组是指对于后缀排序后,每个后缀的位置:sa[rank]=pos:排名为rank的后缀是pos->len这个后缀 note:rank[pos]=rank:位置为pos的串排名为rank 白书上的代码简洁明了,很容易理解。 核心思想:我们对于每个位置开始的后缀,不直接计算,先计算从这个位置开始,向 ...
分类:
编程语言 时间:
2017-01-05 00:49:34
阅读次数:
239
题意:n个平行于坐标轴的正方形,求出最远点对的平方 题解:首先求出凸包,可以证明最远点对一定是凸包上的点对,接着可以证明最远点对(每个点的对踵点)一定只有3*n/2对 接着使用旋转卡壳找到最远点对,但是白书上的算法过于麻烦 所以我看到一个简单想法就是: 可以直接枚举每个点,接着枚举这个点对应最远的点 ...
分类:
其他好文 时间:
2016-12-29 22:48:38
阅读次数:
169
codevs 1082 白书上很详尽。维护两个东西,一个是差量,也就是哪一段被更新了多少,还有一个也是差量,只不过是记录一共减了多少。(说不清) 然后根据白书上的式子,自己yy一下。还是不是很懂 ...
分类:
编程语言 时间:
2016-12-22 06:26:12
阅读次数:
262
1 #include 2 int main() 3 { 4 double n,m,sum=0; 5 while(scanf("%lf%lf",&n,&m)!=EOF) 6 { 7 if(n==0&&m==0) 8 break; 9 for(;n<=m;n++) 10 { 11 ... ...
分类:
其他好文 时间:
2016-12-17 19:58:41
阅读次数:
150
#include int main() { int a,b,c; while(scanf("%d%d%d",&a,&b,&c)!=EOF) { if(a==0&&b==0&&c==0) break; int y=a%b; printf("%d.",a/b); for(int i=0;i... ...
分类:
其他好文 时间:
2016-12-17 19:26:08
阅读次数:
141
1 #include 2 int main() 3 { 4 int n,k,x; 5 scanf("%d",&n); 6 for(k=2*n-1,x=0;k>0,x0;j--) 9 printf(" "); 10 for(int i=k;i>0;i--) 11 printf("*"); 12 ... ...
分类:
其他好文 时间:
2016-12-17 17:14:19
阅读次数:
164
最近又忙又颓.............时间抓不紧....下学期开始就要准备考研了.......就2个月左右可以做自己喜欢的事了....争取把紫书和白书没做的,做过的。。来一次完整的总结 训练指南上面的5个例题+后面15个习题是第一阶段 vjudge训练地址 http://vjudge.net/con ...
分类:
其他好文 时间:
2016-11-29 07:34:19
阅读次数:
224
最大流最重要的思想就是反向边,其他的不说了,为什么要有反向边呢? 举个例子,白书上那张图,画一画有奇效。其实每次增广的时候,我们的流到了一个点,然后呢把反向边推回去了,也就是相当于把从那边流过来的流推回去了,为什么这是最优的?你想啊,那个流原来是流向某条边,现在来了一个流,把他替代了,叫这个流回去, ...
分类:
其他好文 时间:
2016-11-21 08:12:44
阅读次数:
161
https://www.luogu.org/problem/show?pid=1803 链接 这是一道裸的区间问题,和白书2.2.2节完全匹配。那就不啰嗦,直接上代码了。 代码实现 ...
分类:
其他好文 时间:
2016-11-15 14:20:22
阅读次数:
190