社区讨论
93pts求改
P3865【模板】ST 表 & RMQ 问题参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @lz9y0wsd
- 此快照首次捕获于
- 2024/07/31 22:29 2 年前
- 此快照最后确认于
- 2024/08/01 09:05 2 年前
CPP
#include <iostream>
using namespace std;
#define MAXN 100005
int n, m, a[MAXN], ST[MAXN][17], A, B, log_2[MAXN];
template<typename T>
inline T read() {
T num = 0, f = 1;
char ch = getchar();
while (ch < '0' || ch>'9') {
if (ch == '-')f = -1;
ch = getchar();
}
while (ch >= '0' && ch <= '9')num = num * 10 + ch - '0', ch = getchar();
return num * f;
}
template<typename T>
inline void write(T num) {
if (num < 0)putchar('-'), num = -num;
if (num > 10)write(num / 10);
putchar(num % 10 + '0');
}
void init() {
for (int i = 2; i <= n; i++)log_2[i] = log_2[i >> 1] + 1;
for (int i = 1; i <= n; i++)ST[i][0] = a[i];
for (int j = 1; (1 << j) <= n; j++)
for (int i = 1; i <= n - (1 << j) + 1; i++)
ST[i][j] = max(ST[i][j - 1], ST[i + (1 << j - 1)][j - 1]);
}
int query() {
int k = log_2[B - A + 1];
return max(ST[A][k], ST[B - (1 << k) + 1][k]);
}
int main() {
n = read<int>(), m = read<int>();
for (int i = 1; i <= n; i++)a[i] = read<int>();
init();
while (m--) {
A = read<int>(), B = read<int>();
write(query());
putchar('\n');
}
return 0;
}
第11个点报错:
Wrong Answer.wrong answer On line 487733 column 1, read 0, expected 1.
最终得分93pts
求神犇改错 %%%
回复
共 2 条回复,欢迎继续交流。
正在加载回复...