• 2024-10-07P4690 镜中的昆虫 (动态区间颜色数) 题解
    Statement区间涂颜色区间颜色数Solution\(O(\text{polysqrt})\)略。\(O(\text{polylog})\)颜色段均摊有两层含义:随机数据下:任意时刻的颜色段个数期望\(O(\logn)\)非随机数据下:每次推平时访问的颜色段个数均摊\(O(n)\)首先维护每个点\(i\)的\(pre_i\),一次询
  • 2024-08-18Ynoi2016镜中的昆虫
    [Ynoi2016]镜中的昆虫简化题意给定长为\(n\)序列\(a\),两种操作\(m\)次:1lrx:将\([l,r]\)修改为\(x\)2lr:查询\([l,r]\)出现了多少种不同的数\(n,m\le10^5\)题解\(A\)这道题还是很不容易的,起码用了几天的时间。思路也是换了又换,从分块
  • 2024-08-15[Ynoi2016] 镜中的昆虫 题解
    难度在最近遇到的题里相对较高,在这里写一篇珂学题解。(以下是学校给的部分分)\(20\%\):直接暴力枚举。另外\(20\%\):假如我们取\(pre\),对于\(pre<l\)的,\(ans++\),明显二维偏序,树状数组或\(cdq\)即可,时间复杂度\(O(n\logn)\)。另外\(40\%\):相当于多加一个时间维,三维偏序,\(
  • 2024-08-14P4690 Ynoi2016 镜中的昆虫
    P4690Ynoi2016镜中的昆虫原题不会见祖宗。前置珂朵莉树、cdq分治、树状数组思路单点修改区间查询定义\(pre_i\)表示\(col_i\)的前一个一样颜色的位置,那么对于一段区间查询\([l,r]\),我们只需要查询有区间内有多少个\(pre_i<l\)。每次修改时就相当于修改四个同颜色