摘要: 原题链接 题解 莫队算法是局限性非常大的优化,离线+无修改,它通过邻近区间修改复杂度为 \(O(1)\) 的特性让区间排序,然后再做修改,排序的规则是按块排序,然后左端点 \(l\) 在一个块里的按右端点排序 code #include<bits/stdc++.h> using namespace 阅读全文
posted @ 2024-04-16 15:07 纯粹的 阅读(17) 评论(0) 推荐(0)
摘要: 原题链接 题解 本题的优化真的很重要!! 把所有元素出现的下标用map套vector存起来,然后二分查找 code #include<bits/stdc++.h> using namespace std; map<int,vector<int> > mp; int main() { ios::syn 阅读全文
posted @ 2024-04-16 12:49 纯粹的 阅读(110) 评论(0) 推荐(0)
摘要: 原题链接 题解 1 看代码,最简单的 这叫什么思想?不知道,我暂时叫做信息标记法,但是标记的角度清奇 code1 #include<bits/stdc++.h> using namespace std; int late[100005]={0};//离自己最近的相同元素的位置 int maxleft 阅读全文
posted @ 2024-04-16 12:14 纯粹的 阅读(24) 评论(0) 推荐(0)
摘要: 原题链接 题解 本题虽然有思维题做法,但是我认为不具有普世意义,本题的特点在于分治法,即普通算法在平均条件下表现良好,但是在极端条件下极慢,这时候我们需要将极端条件拎出来另做判断 code #include<bits/stdc++.h> #define ll long long using name 阅读全文
posted @ 2024-04-16 11:18 纯粹的 阅读(34) 评论(0) 推荐(0)