请求修改题面
查看原帖
请求修改题面
781159
Lovely_Elaina楼主2024/11/29 10:46

题目描述

对于一个长度为 nn 的数列 h={h1,h2,…,hn}h=\{h_1,h_2,\dots,h_n\},满足 ∀i∈[1,n),∣hi−hi+1∣≤1\forall i\in[1,n),|h_i-h_{i+1}|\le1。

给出数列中 mm 个数,试构造出一个合法完整数列,使得 max⁡{h1,h2,…,hn}\max\{h_1,h_2,\dots,h_n\} 最大。

若不存在一个合法的构造方案,请输出 IMPOSSIBLE。

输入格式

第一行,两个整数 nn 和 mm。

接下来 mm 行,第 i+1i+1 行两个数 did_i 和 hdih_{d_i}。

数据保证数列 d={d1,d2,…,dm}d=\{d_1,d_2,\dots,d_m\} 单调递增。

输出格式

  • 若存在合法方案,输出一行一个整数表示最大的 max⁡{h1,h2,…,hn}\max\{h_1,h_2,\dots,h_n\};
  • 若不存在一个合法方案,请输出 IMPOSSIBLE。

数据范围与约定

对于所有数据,满足 1≤di≤n≤1081\le d_i\le n\le10^8,1≤m≤1051\le m\le10^5,1≤hdi≤1081\le h_{d_i}\le 10^8。

说明/提示

  • 对于第一个样例,存在一个合法构造方案 h={0,0,1,2,1,1,0,1}h=\{0,0,1,2,1,1,0,1\} 使得最大值为 22,可以证明不存在一个合法构造方案使得最大值大于此种构造方案;
  • 对于第二个样例,i=7i=7 时不满足 ∀i∈[1,n),∣hi−hi+1∣≤1\forall i\in[1,n),|h_i-h_{i+1}|\le1,故输出 IMPOSSIBLE。

### 题目描述

对于一个长度为 $n$ 的数列 $h=\{h_1,h_2,\dots,h_n\}$,满足 $\forall i\in[1,n),|h_i-h_{i+1}|\le1$。

给出数列中 $m$ 个数,试构造出一个合法完整数列,使得 $\max\{h_1,h_2,\dots,h_n\}$ 最大。

若不存在一个合法的构造方案,请输出 `IMPOSSIBLE`。

### 输入格式

第一行,两个整数 $n$ 和 $m$。

接下来 $m$ 行,第 $i+1$ 行两个数 $d_i$ 和 $h_{d_i}$。

数据保证数列 $d=\{d_1,d_2,\dots,d_m\}$ 单调递增。

### 输出格式

- 若存在合法方案,输出一行一个整数表示最大的 $\max\{h_1,h_2,\dots,h_n\}$;
- 若不存在一个合法方案,请输出 `IMPOSSIBLE`。

### 数据范围与约定

对于所有数据,满足 $1\le d_i\le n\le10^8$,$1\le m\le10^5$,$1\le h_{d_i}\le 10^8$。

### 说明/提示

- 对于第一个样例,存在一个合法构造方案 $h=\{0,0,1,2,1,1,0,1\}$ 使得最大值为 $2$,可以证明不存在一个合法构造方案使得最大值大于此种构造方案;
- 对于第二个样例,$i=7$ 时不满足 $\forall i\in[1,n),|h_i-h_{i+1}|\le1$,故输出 `IMPOSSIBLE`。
2024/11/29 10:46
加载中...