摘要: Problem:给定一颗树,给每个节点都染上颜色使没有两个相邻的节点都染上颜色。Solve:每个节点记录两个最大值,1.这个节点染色的最大值B[u] 2.这个节点不然色的最大值W[u]初始叶子有B[v]=1,W[v]=0,dfs一遍对root取max(B[root],W[root])。Balancing Actdfs一遍标记以每个节点为根的子树总的节点数,tree dp 一遍得出删除每个节点的blance,O(N)扫一遍取最小。 阅读全文
posted @ 2012-11-29 22:45 zhang1107 阅读(148) 评论(0) 推荐(0) 编辑
摘要: Interval DPFrom:http://www.stanford.edu/class/cs97si/04-dynamic-programming.pdfProblem:插入最少的字母使输入的串,变成回文串。Solve:d[i][j]表示i~j最少需要添加几个字母,一个字母即d[i][i]=0。如果y[1~k]为x[i~j]最佳解,则y[2~k-1]必为x[i+1~j],x[i~j-1]和x[i+1~j-1]其中之一的最优解。// fill in base cases herefor(t = 2; t <= n; t++)for(i = 1, j = t; j <= n; i+ 阅读全文
posted @ 2012-11-29 21:50 zhang1107 阅读(211) 评论(0) 推荐(0) 编辑
摘要: UVA 105 The Skyline Problemhh数组记录每个坐标点上高度的最大值,坐标范围[0,10000],每当高度变化输出横坐标很纵坐标,时间复杂度O(10000).观察数据范围和思维的灵活度有待提高。 阅读全文
posted @ 2012-11-29 17:57 zhang1107 阅读(144) 评论(0) 推荐(0) 编辑
摘要: D. Building Bridge两点之间直线最短,相似三角形求出在A上的点,二分查找最接近这点的点,B河岸上扫一遍求出最小距离时分别对应A,B河岸上的点,复杂度O(mlogN) 阅读全文
posted @ 2012-11-29 14:49 zhang1107 阅读(163) 评论(0) 推荐(0) 编辑
摘要: from:Matrix67构造有理数边,结果乘所有分母的最小公倍数。 阅读全文
posted @ 2012-11-28 18:19 zhang1107 阅读(154) 评论(0) 推荐(0) 编辑
摘要: from:Matrix67Ptolemy 定理:圆内接四边形的对边乘积之和等于对角线的乘积 阅读全文
posted @ 2012-11-28 18:06 zhang1107 阅读(163) 评论(0) 推荐(0) 编辑
摘要: http://www.isnowfy.com/quine/ 阅读全文
posted @ 2012-11-28 00:21 zhang1107 阅读(113) 评论(0) 推荐(0) 编辑
摘要: B. Restoring IPv6状态不好,看来好久才看出题意,字符处理始终是我的弱项,有空联系下。记录一下。View Code 1 #include <iostream> 2 #include <cassert> 3 #include <cstdio> 4 #include <cstring> 5 #include <vector> 6 #include <algorithm> 7 using namespace std; 8 9 const int MM = 110010;10 #define fuck puts(&q 阅读全文
posted @ 2012-11-27 21:53 zhang1107 阅读(136) 评论(0) 推荐(0) 编辑
摘要: C. Movie Critics先对原输入的数组对连续相同的元素去重。O(N)扫一遍记录删除每一位元素所改变的波动。有两种情况:A.两端元素由x y,.....和.....y x两种情况,删掉x波动减一。B.x不在两端有...y x z...,B.1删掉x当y=z时,波动减2 B.2当y!=z时,虽然去掉x波动减2,但y z组合波动又加1,所以总的贡献度+1。复杂度O(N). 阅读全文
posted @ 2012-11-27 20:23 zhang1107 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 12546-LCM Pair Sum给定一个数N,求所有满足最小公倍数为N的a,b的和对1000000007取摸。N已经分解质因数,没分解可自行分解,pi<=1000。可以得出:sum=(1+p1+....+p1^num1+num1*p1^num1)*(1+p2+...+p2^num2+num2*p2^num2)*.........*(1+pn+....+pn^numn+numn*pn^numn)+N; 阅读全文
posted @ 2012-11-27 16:55 zhang1107 阅读(586) 评论(0) 推荐(0) 编辑