博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 3368 Frequent values (RMQ)
阅读量:6592 次
发布时间:2019-06-24

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

题目链接:

题目大意:

给出一个n个数长度的串。 m个询问

求出给定范围内的最大连续字符串的长度

方法:

RMQ模板, 记录每一个位置的数连续的次数。用RMQ求出每一个区间的最大连续字符的长度值

#include 
#include
#include
#include
#include
using namespace std;const int maxn = 100010;int A[maxn];int Max[maxn][20];int f[maxn];void RMQ(int n){ int k = (int )(log(n) / log(2)); for(int j=1; j<=k; j++) for(int i=1; i<=n; i++) if(i + (1<
1) f[i] = f[i-1] + 1; else { f[i]++; } Max[i][0] = f[i]; } RMQ(n); //for(int i=1; i<=n; i++) // printf("%d ",f[i]); while(q--){ int a, b; scanf("%d%d",&a,&b); int t = a; while(t <= b && A[t] == A[t-1]) t++; int k = (int )(log(b-t+1)/log(2)); int ans; if(t > b) ans = 0; else ans = max(Max[t][k], Max[b-(1<

转载于:https://www.cnblogs.com/yutingliuyl/p/7059027.html

你可能感兴趣的文章
jmeter参数化之 CSV data set config
查看>>
分组背包,每组最多选1个
查看>>
牛客国庆集训派对Day3 B Tree
查看>>
PHP 笔记——基础
查看>>
Java -- 深入浅出GC自动回收机制
查看>>
开发自己的脚本引擎(一)先吹吹水,再干事情。
查看>>
python中判断对象类型的函数——isinstance
查看>>
计数排序 + 线段树优化 --- Codeforces 558E : A Simple Task
查看>>
javascript版前端页面RSA非对称加密解密
查看>>
convex optimization(ebook+tutorial)best
查看>>
L1 minimization
查看>>
English Corner
查看>>
caffe扩展实验
查看>>
Properties工具类
查看>>
svn的使用
查看>>
小程序-3G菜单-
查看>>
使用fastcall 代替汇编hook thiscall
查看>>
BZOJ3233 [AHOI2013] 找硬币
查看>>
会计的思考(40):会计的时空穿越
查看>>
配置LANMP环境(10)-- 安装memcached与redis
查看>>