摘要: 题意:给出长度为n的数字序列,求重复出现次数不小于k的最长序列(连续)的长度。例如序列 1 2 3 2 3 2 3 1,k=2,那么序列2 3 2 3重复出现了两次,长度为4。分析:二分枚举长度,如果在height数组中连续出现超过k次的话就满足。View Code #include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int maxn = 1000002;int s[maxn];int sa[maxn],t[maxn],t2[maxn],c[maxn 阅读全文
posted @ 2013-02-13 21:30 'wind 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 题意:Gardon是个怕麻烦的人(恩,就是爱偷懒的人),很显然将64个圆盘逐一搬动直到所有的盘子都到达第三个柱子上很困难,所以Gardon决定作个小弊,他又找来了一根一模一样的柱子,通过这个柱子来更快的把所有的盘子移到第三个柱子上。下面的问题就是:当Gardon在一次游戏中使用了N个盘子时,他需要多少次移动才能把他们都移到第三个柱子上?很显然,在没有第四个柱子时,问题的解是2^N-1,但现在有了这个柱子的帮助,又该是多少呢?分析:先将A柱子上的k个盘子通过四个柱子移动的D柱子上,在将剩下的n-k盘子通过三个柱子移动到C柱子上,在将D柱上的盘子通过四个柱子移动到C柱子上。 dp[i] = m.. 阅读全文
posted @ 2013-02-13 11:20 'wind 阅读(347) 评论(0) 推荐(0) 编辑