博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj 1743 Musical Theme 后缀数组
阅读量:5214 次
发布时间:2019-06-14

本文共 1691 字,大约阅读时间需要 5 分钟。

做出公差后找出最长不重叠子序列的长度。

后缀数组的模板, 二分长度k然后将height数组分组, 判断每一组内sa的最大值-sa的最小值是否大于等于k, 如果大于等于k则满足。

1 #include 
2 #include
3 #include
4 #include
5 #include
6 #include
7 #include
8 #include
9 #include
10 #include
11 #include
12 #include
13 using namespace std; 14 #define pb(x) push_back(x) 15 #define ll long long 16 #define mk(x, y) make_pair(x, y) 17 #define lson l, m, rt<<1 18 #define mem(a) memset(a, 0, sizeof(a)) 19 #define rson m+1, r, rt<<1|1 20 #define mem1(a) memset(a, -1, sizeof(a)) 21 #define mem2(a) memset(a, 0x3f, sizeof(a)) 22 #define rep(i, n, a) for(int i = a; i
pll; 26 const double PI = acos(-1.0); 27 const double eps = 1e-8; 28 const int mod = 1e9+7; 29 const int inf = 1061109567; 30 const int dir[][2] = { {-1, 0}, { 1, 0}, { 0, -1}, { 0, 1} }; 31 const int maxn = 2e4+5; 32 int sa[maxn]; 33 int t1[maxn],t2[maxn],c[maxn], a[maxn]; 34 int rankk[maxn],height[maxn]; 35 void build_sa(int s[],int n,int m) 36 { 37 int i,j,p,*x=t1,*y=t2; 38 for(i=0;i
=0;i--)sa[--c[x[i]]]=i; 42 for(j=1;j<=n;j<<=1) 43 { 44 p=0; 45 for(i=n-j;i
=j)y[p++]=sa[i]-j; 47 for(i=0;i
=0;i--)sa[--c[x[y[i]]]]=y[i]; 51 swap(x,y); 52 p=1;x[sa[0]]=0; 53 for(i=1;i
=n)break; 56 m=p; 57 } 58 } 59 void getHeight(int s[],int n) 60 { 61 int i,j,k=0; 62 for(i=0;i<=n;i++)rankk[sa[i]]=i; 63 for(i=0;i
mid) 80 return 1; 81 } 82 } 83 return 0; 84 } 85 int main() 86 { 87 int n, m; 88 while(cin>>n&&n) { 89 for(int i = 0; i
>1;100 if(!check(mid, n)) {101 r = mid-1;102 } else {103 l = mid+1;104 }105 }106 if(l<5) {107 l = 0;108 }109 cout<
<

 

转载于:https://www.cnblogs.com/yohaha/p/5097464.html

你可能感兴趣的文章
开发环境、生产环境、测试环境的基本理解和区别
查看>>
【科研论文】W5100在远程电力质量监测设备中的应用
查看>>
一步一步写miscdevice的驱动模块
查看>>
小小的蜗牛有大大的梦想
查看>>
c# 获取键盘的输入
查看>>
svn diff 详解
查看>>
HDU 1548 A strange lift(简单BFS)
查看>>
Ubuntu下gcc安装及使用
查看>>
最短路算法 (bellman-Ford算法)
查看>>
Ubuntu 16.04安装Kate文本编辑工具
查看>>
活着与生存
查看>>
迅雷极速版|xunlei下载
查看>>
一位ACMer过来人的心得【转】
查看>>
POJ 1730 Perfect Pth Powers (分解素因子)
查看>>
时间复杂度与空间复杂度
查看>>
Ubuntu火狐、Chromium等浏览器安装flash插件
查看>>
asp.net 权限问题
查看>>
【黑书】【DP】最优代价子母树
查看>>
如何打好前端游击战
查看>>
R中的高效批量处理函数(lapply sapply apply tapply mapply)(转)
查看>>