tyvj P1038 忠诚 ST表(RMQ)
来源:互联网 发布:地理信息系统算法 编辑:程序博客网 时间:2024/05/17 08:16
原题链接:http://www.tyvj.cn/p/1038
ST表的简单应用。
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<math.h>#define BASE 2#define Max_N 100010#define _Log2(_) ((int)(log((double)(_)) / log((double)BASE)))#define _min(a,b) ((a)>(b)?(b):(a))int ST[Max_N][18];void built(int n){ int i, j; int k = _Log2(n); for (j = 1; j <= k; j++){ for (i = 0; i + (1 << j) - 1 < n; i++){ ST[i][j] = _min(ST[i][j - 1], ST[i + (1 << (j - 1))][j - 1]); } }}int query(int x, int y){ int k = _Log2(y - x + 1); return _min(ST[x][k], ST[y - (1 << k) + 1][k]);}int main(){#ifdef LOCAL freopen("in.txt", "r", stdin); freopen("out.txt", "w+", stdout);#endif int i, n, m, x, y; scanf("%d %d", &n, &m); for (i = 0; i < n; i++) scanf("%d", &ST[i][0]); built(n); for (i = 0; i < m; i++){ scanf("%d %d", &x, &y); printf("%d", query(x - 1, y - 1)); if (i < m) printf(" "); } return 0;}
0 0
- tyvj P1038 忠诚 ST表(RMQ)
- tyvj P1038 忠诚 线段树
- codevs2173忠诚(st表)
- tyvj-忠诚
- ST算法解RMQ模板(洛谷1816 忠诚)
- <st表模板> codevs 2173 忠诚
- 【RMQ算法】ST表
- RMQ-ST表
- TYVJ 1038 1039 忠诚、、、、、
- Tyvj 1039 忠诚2
- Tyvj 1038 忠诚
- tyvj p1039 忠诚2
- [Tyvj 1038] 忠诚
- [TYVJ P1039] 忠诚2
- RMQ--ST表算法理解
- RMQ (st表) Balanced Lineup
- RMQ 的ST表做法
- RMQ ST表学习笔记
- Android从Existing Code新建工程的兼容支持问题
- 一次谷歌面试趣事
- 转:Jsp和Servlet里面的response、request、编码、路径问题
- LeetCode 028 Implement strStr()
- Ubuntu上搭建本地Git服务器
- tyvj P1038 忠诚 ST表(RMQ)
- JAVA集锦(一)--IO流梳理
- Java 方法参数传递
- html5框架列举
- 矩阵快速幂
- 设置DIV随滚动条滚动而滚动
- 黑马程序员--java基础--类的继承与接口的实现
- 内存溢出和内存泄漏的区别
- BZOJ 1875 [SDOI 2009] HH去散步 (DP,矩阵乘法优化)