1 3565 問題 A 數列區間最大值

2021-09-25 03:38:38 字數 994 閱讀 6811

題目描述有一串含有n個數的數列,有m個詢問,每個詢問有兩個數字x,y,求出x到y這段區間內的最大值

輸入:

第一行為乙個n和m分別表示數字的個數和詢問的個數,第二行為n個數。接下來m行,每行都有兩個整數x,y。

1 <= x, y <= 1e5

輸出:

輸出共m行,每行輸出乙個數。

樣例輸入:

10 2

3 2 4 5 6 8 1 2 9 7

1 4

3 8

樣例輸出:

5

8

題目型別:rmq

思路:

這是一道rmq模板題,首先我們先進行rmq預處理,即先找到每個區域內的最大值,存入dp陣列中,然後根據查詢直接詢問dp陣列

#includeusing namespace std;

const int n=1e6+5;

int dp[n][25];

int a[n];

int n,m,x,y;

void rmq_build()//rmq預處理

return;

}int rmq_query(int l,int r)//查詢【l,r】範圍內的最大值

int main()

rmq_build();

for(int i=1;i<=m;i++)

}

數列區間最大值 線段樹

acwing 1270 time limit 2s memory limit 64mb problem description 輸入一串數字,給你 m 個詢問,每次詢問就給你兩個數字 x,y要求你說出 x 到 y 這段區間內的最大數。input output 輸出共 m 行,每行輸出乙個數。samp...

RMQ問題 1541 例 1 數列區間最大值

時間限制 1000 ms 記憶體限制 524288 kb 提交數 757 通過數 262 輸入一串數字,給你 m 個詢問,每次詢問就給你兩個數字 x,y,要求你說出 x 到 y 這段區間內的最大數。第一行兩個整數 n,m 表示數字的個數和要詢問的次數 接下來一行為 n 個數 接下來 m 行,每行都有...

數列區間最大值 RMQ問題(ST演算法模板)

輸入一串數字,給你 m個詢問,每次詢問就給你兩個數字 x,y,要求你說出 x 到 y 這段區間內的最大數。輸入格式 第一行兩個整數 n,m 表示數字的個數和要詢問的次數 接下來一行為 n 個數 接下來 m 行,每行都有兩個整數x,y 輸出格式 輸出共 m 行,每行輸出乙個數。樣例樣例輸入 10 2 ...