#762. 分治维护单调栈

分治维护单调栈

题目描述

给定一个长度为 nn 的序列,给定 mm 次查询,每次查询一个区间,求这个区间从 rr 开始到 ll 每次最小值产生变化的结果。

输入格式

第一行一个整数 nn 表示序列长度。

第二行 nn 个正整数表示初始序列。 接下来一行一个正整数 mm 表示询问的次数。

下面 mm 行,每行两个数字 l,rl,r 表示询问的区间。

输出格式

对于 mm 次询问,输出每次询问的结果。

样例 1 输入

8
1 2 3 1 2 9 10 20
4
1 3
1 4
1 6 
1 8

样例 1 输出

1 2 3
1 
1 2 9
1 2 9 10 20

数据范围

n,m105n,m\leq 10^5