摘要:
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)扫一遍取最小。 阅读全文
摘要:
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+ 阅读全文
摘要:
UVA 105 The Skyline Problemhh数组记录每个坐标点上高度的最大值,坐标范围[0,10000],每当高度变化输出横坐标很纵坐标,时间复杂度O(10000).观察数据范围和思维的灵活度有待提高。 阅读全文
摘要:
D. Building Bridge两点之间直线最短,相似三角形求出在A上的点,二分查找最接近这点的点,B河岸上扫一遍求出最小距离时分别对应A,B河岸上的点,复杂度O(mlogN) 阅读全文