【省选模拟】20/06/02

AA

  • 发现只需要压黑白开头存不存在为偶数的,若存在,其他偶数边随便选不选这条边的选发是唯一的,dpdp 即可,CodeCode

BB

  • 补集转换一下,枚举两个不交的集合,考虑他们向外的连边,强制指向这个集合
    对于选定的集合,要统计其联通的方案数,容斥 dpdp 即可,CodeCode

CC

  • 性质:最后选出来的一定形如 k,k1,,1k,k-1,\dots,1,并且后一个是前一个的前缀或后缀,一个后缀若 ii 合法,则 i1i-1 也合法
  • 基于这个进行 dpdpdpidp_i 表示 ii 的后缀的最大值
    二分它的值,考虑转移到一个 jj,那么需要满足 dpjmid1,max(lcp(i,j),lcp(i+1,j))mid1,ji+middp_j\ge mid-1,max(lcp(i,j),lcp(i+1,j))\ge mid-1,j\ge i+mid,用主席数维护区间最大值即可
    发现有性质 fifi+1+1f_i\le f_{i+1}+1,那么不需要二分,可以在均摊 O(nlogn)O(n\log n) 的时间解决这个问题,CodeCode
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章