ST 表 模板
来源:互联网 发布:知乎电影1942精彩片段 编辑:程序博客网 时间:2024/04/29 12:00
本以为ST表没用,做了个题发现O(1)的强大之处~~~
没想到 endl 比 ‘\n’慢这么多; 用endl 30分,T 7个点; \n 直接AC;
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>using namespace std;const int MAXN=200001;int a[MAXN],dp[MAXN][21],n,m;struct ST{ void st_init() { for(int i=1;i<=n;i++) dp[i][0]=a[i]; for(int j=1;(1<<j)<=n;j++) for(int i=1;i+(1<<j)-1<=n;i++) dp[i][j]=max(dp[i][j-1],dp[i+(1<<(j-1))][j-1]); return; } int query(int l,int r) { int k=log2(r-l+1); return max(dp[l][k],dp[r-(1<<k)+1][k]); }}st;void solve(){ cin>>n>>m; for(int i=1;i<=n;i++) scanf("%d",&a[i]); st.st_init(); while(m--) { int x,y; scanf("%d%d",&x,&y); cout<<st.query(x,y)<<"\n"; }}int main(){ solve(); return 0;}
阅读全文
1 0
- ST表LCA模板
- 个人模板 ST表
- ST表模板
- 【模板】ST稀疏表
- ST 表 模板
- 【模板】st表
- ST表模板
- st表模板
- 【笔记+模板】ST 表
- [模板]ST表
- CF Hello 2015 A ST表模板
- st表模板,以最小值为例
- codeforces 689D ST表+二分 模板
- ST表模板(维护区间最大值)
- <st表模板> codevs 2173 忠诚
- RMQ-ST模板
- ST算法(RMQ模板)
- RMQ ST 算法模板
- GIT命令
- 线性结构上的动态规划
- 如何通过Mysql的二进制日志恢复数据库数据
- C++ 高精算法
- 如何在 JS 中嵌入 HTML 代码?
- ST 表 模板
- 不创建系统保留分区
- C/S和B/S 以及初识Tomcat
- POJ 1470 Closest Common Ancestors 离线LCA
- Learning Python Part I 之 字符串
- 自己模拟strcpy库函数写的功能函数my_strcpy实现strcpy的功能,完整代码
- 算法总结五
- 快速排序
- R学习:通过REmap向Echarts中的地图写入数据(运行自带例子)