摘要: 题意:给出一棵树(n个节点),去掉一个点后,每个子树的节点数都不大于 n/2,求出这样的节点并按升序输出树形dp,很神圣的样子,就是树形dfs嘛。。。代码:#include<iostream>#include<cstdio>#include<string>#include<cstring>#include<cmath>#include<algorithm>#define nMAX 10010using namespace std;int head[nMAX],dp[nMAX];int s_edge,n,num,ans[nM 阅读全文
posted @ 2012-08-10 21:37 快乐. 阅读(352) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2185求最小覆盖子矩阵的面积,求出每行的最小覆盖子串,求最小公倍数,就是矩阵的长度求出每列的最小覆盖子矩阵然后求最小公倍数,就是矩阵的宽最小覆盖字串的长度 ans=len-next[len]; http://blog.csdn.net/fjsd155/article/details/6866991代码:#include<iostream>#include<cstdio>#include<cstring>#include<string>#define nMAX 10005#define mMAX 阅读全文
posted @ 2012-08-10 11:41 快乐. 阅读(163) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2406求最小重复字串KMP next函数代码:#include<iostream>#include<cstdio>#include<cstring>#include<string>#define nMAX 1000005using namespace std;int next[nMAX],len;char s[nMAX];void get_next(){ //next[i]表示i前面匹配了几个字符 int i,j; i=0,j=-1; next[0]=-1;//初始化 while(i<= 阅读全文
posted @ 2012-08-10 11:36 快乐. 阅读(126) 评论(0) 推荐(0) 编辑