完全字典序覆盖

定义

  1. 字典序
  2. $b$ 覆盖 $a$ :=
    1. $a \preceq b$
    2. $\neg \exists c$ 满足 $a\prec c \prec b$

求解

  1. 极性原理
    1. 后缀递增 $\Rightarrow$ 对应前缀下最小
    2. 后缀递减 $\Rightarrow$ 对应前缀下最大
  2. 找到最短递减后缀 $\mathrm{post}[k.. 0]$,对应前缀 $\mathrm{pre}[n.. k+1]$
  3. 找到 $\mathrm{post}$ 里覆盖 $\mathrm{pre}[k+1]$ 的符号 $\mathrm{post}[t]$ 替换掉 $\mathrm{pre}[k+1]$
  4. 新后缀做最小后缀 (aka 递增)
例子

已知 $\sum=\left{1,2,3,4,5,6,7,8\right}$ 求 $63285741$ 的覆盖

  1. 最短递减后缀 $741$
  2. $\mathrm{post[2]=7}$ 覆盖 $\mathrm{pre}[3]=5$
  3. 新后缀 ${1,4,5}$ 的最小后缀为 $145$
  4. 覆盖为 $63287145$