06 2012 档案

摘要:编辑器加载中...#include"stdio.h"#include"string.h"#define maxn 200005char s1[maxn],s2[maxn];int wa[maxn],wb[maxn],wv[maxn],ws[maxn];int rank[maxn],height[maxn];int sa[maxn];int cmp(int *r,int a,int b,int l){return r[a]==r[b]&&r[a+l]==r[b+l];}void da(char *r,int *sa,int n,int m) 阅读全文
posted @ 2012-06-05 00:04 朝圣の路 阅读(409) 评论(1) 推荐(0)
摘要:连人家的博客我都直接给抄来了,感觉真的很可耻!!题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1143开始也是想递推的,但是发现递推的过程中有重复计算,所以便下结论此题不是递推,然后就不会做了。后来看了人家大牛的解法,发现确实是递推,而且避免重复计算的过程的公式为f[n]=f(2)*f[n-2]+2*(f[n-4]+f[n-2]+...+f[0])(其中f[0]约定为1)。公式是这样解释的:我们从右往左定顺序,首先是划分为n-2,和2两部分,则为f[n-2]*f[2],然后划分为n-4和4两部分,但是4的部分不能分解为2,2(否则重复计算了)。我 阅读全文
posted @ 2012-06-02 16:33 朝圣の路 阅读(617) 评论(0) 推荐(0)