【省选模拟】20/04/23(最优化专场)

  • A:每个 rr 维护与每个 llgcdgcd,会分成 logAi\log A_i 段,暴力维护即可

  • B:考虑 Rmin,Rmax,Bmin,BmaxR_{min},R_{max},B_{min},B_{max} 和全局 min,maxmin,max 的关系,分为 Rmin=min,Rmax=maxR_{min}=min,R_{max}=maxRmin=min,Bmax=maxR_{min}=min,B_{max}=max 讨论,前一种情况要最小化 BmaxBminB_{max}-B_{min},这个可以抽象成一个 2n2n 的序列,每个点有两个颜色,选一段至少包涵 nn 种颜色,那么可以双指针扫,后一种情况要最小化 BminRmaxmaxBminminRmaxB_{min}*R_{max}-max*B_{min}-min*R_{max},考虑枚举 BminB_{min},那么要最小化 RmaxR_{max},这个等价于从开头开始扫,有 nn 种颜色就停下来,考虑 BminB_{min} 只会占据一种颜色,那么特判一下即可,同时需要满足 BminB_{min} 向后有 nn 种颜色,预处理一下限制即可

  • C:考虑维护 dpi,jdp_{i,j} 表示当前在 i,ji,j 的最小步数,存在两种转移
    dpnxt,i=min(dpi,j+jnxt)dpnxt,j=dpi,j+inxtdp_{nxt,i}=min(dp_{i,j}+|j-nxt|)\\ dp_{nxt,j}=dp_{i,j}+|i-nxt|
    全局加,单点改,求 minmin 把绝对值拆开线段树维护即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章