#3758. 邻值查找

    ID: 3758 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>数据结构链表算法竞赛进阶指南基本数据结构0x13邻接表

邻值查找

题目描述

给定一个长度为 nn 的序列 AAAA 中的数各不相同。

对于 AA 中的每一个数 AiA_i,求:

min1j<iAiAjmin_1≤j<i|A_i−A_j|

以及令上式取到最小值的 jj(记为Pi P_i)。若最小值点不唯一,则选择使 AjA_j 较小的那个。

输入格式

第一行输入整数n n,代表序列长度。

第二行输入 nn 个整数A1AnA_1…A_n,代表序列的具体数值,数值之间用空格隔开。

输出格式

输出共n n−1 行,每行输出两个整数,数值之间用空格隔开。

分别表示当i i 取 2∼nn 时,对应的 min1j<iAiAjmin_1≤j<i|A_i−A_j| Pi P_i 的值。

样例

3
1 5 3
4 1
2 1

数据范围

  • n105,Ai109n≤10^5,|A_i|≤10^9

来源

  • 算法竞赛进阶指南