题意:N个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色.例如颜色分别为1,2,2,1的四个布丁一共有3段颜色. 对每个颜色的位置维护链表。合并两个颜色,连接链表,统计贡献。 统计贡献的复杂度是与链表长度有关的。如果遍历长度短的链表那么复杂度自然更小(遍历链表然后比较相邻元素的颜色) 于是想到启发式合并,把小的合并到大的上 每个元素只多被合并log次(因为每次合并后长度翻一倍)总复杂度nlogn 标签 链表 布丁