摘要: 题目传送门 今天看了分块,顺便把基本的莫队学习了一下。 莫队算法是一种离线算法,复杂度可以达到O((M+N)*Sqrt(N)); 对于询问区间的左端点分块,块内的右端点从小到大排列。 对区间进行偏移操作。 掌握一个思想基础:两个询问之间的状态跳转。如图,当前完成的询问的区间为[a,b],下一个询问的 阅读全文
posted @ 2018-03-16 15:21 Cptraser 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 网络流,求最小割。 设tot为所有盈利的和,即所有人(不花钱)雇佣。 对于S->i建一条容量为c[i]的边,i->j建一条S[i][j]*2的边,之所以这样建是因为如果不选这个人还会亏S[i][j]。 对于i->T建一条容量为∑S[i][j]的边。 最小割=最大流,跑Dinic code 阅读全文
posted @ 2018-03-16 15:03 Cptraser 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 第一次接触分块...... 分块查找是折半查找和顺序查找的一种改进方法,分块查找由于只要求索引表是有序的,对块内节点没有排序要求,因此特别适合于节点动态变化的情况。 分块修改理论复杂度为O(N/M),M为块的大小,有基本不等式得M=Sqrt(N)时较优。 分块将原数组分为M块,对M块的信 阅读全文
posted @ 2018-03-16 12:00 Cptraser 阅读(240) 评论(0) 推荐(0) 编辑