随笔分类 -  分块

摘要:Codeforces 348C:Subset Sums 题目链接:http://codeforces.com/contest/348/problem/C 题目大意:给出$n$个数,$m$个集合(每个集合包含若干个数).现有两种操作:1.查询某个集合的元素和;2.某个集合中所有元素加$k$.共操作$q 阅读全文
posted @ 2017-03-05 12:32 barriery 阅读(247) 评论(0) 推荐(0)
摘要:Kattis:Curious Cupid 题目链接:https://open.kattis.com/problems/cupid 题目大意:有$n$个男生及$n$个女生,每人懂得$1$种语言(共$k$种语言),若男生懂的语言与女生相同即可配对(一人仅可配对一次)。现有$m$个区间,问各个区间内最大的 阅读全文
posted @ 2017-02-26 16:04 barriery 阅读(305) 评论(0) 推荐(0)
摘要:Bounce 弹飞绵羊 题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2002 分块 将整个大区间分成若干块,每个点维护到下一个块需要跳的次数以及会跳到哪个点(分块要注意细节,区间开闭容易弄乱)。 代码如下: 阅读全文
posted @ 2016-08-14 10:57 barriery 阅读(300) 评论(0) 推荐(0)
摘要:NPY and girls 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5145 莫队算法 注意到没有修改区间的操作,使用莫队算法:将整个区间分成若干个块,将询问区间按块优先升序排序,同块内按区间右界升序排序,添加一个元素,满足条件的值sum就变为s 阅读全文
posted @ 2016-08-14 10:51 barriery 阅读(1242) 评论(0) 推荐(0)