AT_pakencamp_2022_day3_j Balanced Permutation
题目描述
给定一个长度为 $N$ 的整数序列 $A$。请找出一个长度为 $N$ 的排列 $P$,使其满足以下条件:
- 对于所有的 $i$,如果 $A_i \neq -1$,则 $A_i = P_i$。
在满足条件的所有排列中,求 $\displaystyle \max_{1 \le i,j \le N} |iP_i-jP_j|$ 的最小可能值。
输入格式
输入从标准输入读取,格式如下:
> $N$ $A_1$ $A_2$ $\ldots$ $A_N$
输出格式
请输出答案。
说明/提示
### 样例解释 1
当 $P=(1,3,2)$ 时,$\displaystyle \max_{1 \le i,j \le N} |iP_i-jP_j|=5$,当 $P=(3,1,2)$ 时,$\displaystyle \max_{1 \le i,j \le N} |iP_i-jP_j|=4$,所以答案是 $4$。
### 数据范围
- $1 \leq N \leq 5000$
- $A_i = -1$ 或 $1 \le A_i \le N$
- 对于 $i \neq j$,如果 $A_i \neq -1$ 且 $A_j \neq -1$,则 $A_i \neq A_j$
- 所有输入均为整数。
由 ChatGPT 5 翻译