首页 > 离别
头像 __故人__
发表于 2020-11-23 20:04:34
分析 欢迎私聊,感觉说的不太清晰。 我们考虑如何保证每个区间的某一个种类个数达到 。这个我们可以考虑离线询问,将 的询问差分成 的答案。那么我们先把一个询问拆分成两个,再来考虑前缀的做法 。我们对于每个数,保留它的前一个和他相同相同的元素。那么枚举的右端点到了 ,那么左端点在 都是可以 展开全文
头像 范艺杰
发表于 2020-11-25 12:52:41
我们发现,对于一个固定的右端点r而言,合法的左端点l一定是一个连续的区间,从某个数第一次出现k次开始合法,到某个数第一次出现k+1次开始不合法。因为我们对询问按右端点离线,对于每扫描一个右端点时将合法的左区间加入到线段树中,然后统计即可O(nlog(n))。 #include <cstdio& 展开全文
头像 lytqwq
发表于 2020-11-24 10:15:10
感谢大佬提供的思路我稍微写的详细一点qwq发现可以把询问离线下来,每次询问的答案就是的答案减去的答案。问题转变为了如何求的答案:在询问,一种最直接的想法就是直接枚举使得。但是我们已经转化为的答案,所以我们可以对每个位置预处理出一个最小使得中出现次数最多的数出现了次,然后我们可以直接枚举,就可以取的位 展开全文

等你来战

查看全部