![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
离线
mengbi_er
一个蒟蒻JLoier
展开
-
bzoj 1878: [SDOI2009]HH的项链
好像只有我sb写了巨长巨慢的线段树。。。 将询问离线,记录每个颜色首先出现的位置和下一个出现的位置,维护颜色数前缀和,将询问按左端点排序。从1到n枚举,如果左端点是当前位置则查询sum[r]-sum[l-1] (sum[l-1]似乎等于0…),最后对i到nex[i] 减一(就是忽略当前位置)。#include<iostream> #include<cstdio> #include<cstring>原创 2017-08-14 09:46:23 · 169 阅读 · 0 评论 -
bzoj2743: [HEOI2012]采花
考虑将询问离线。考虑每种颜色的花对答案的贡献,我们发现,对于一个位置上的花,若左端点在从1到上一个与该位置颜色相同的花的位置上,则该颜色对答案有贡献。所以将所有询问按1右端点从小到大排序,定义pre[i]为与该位置距离最近的与它颜色相同的花。对于一个位置,将pre[pre[i]]+1–pre[i]这段区间+1,然后每次询问的答案就是L上的值了,可以用线段树区间加,单点查询来做。#include<io原创 2017-09-12 15:39:15 · 234 阅读 · 0 评论