随笔分类 -  分块

摘要:代码+注释: 1 /* 2 题意: 3 一共有n个人,其中0号是总裁(金字塔顶尖)。后面输入其他n-1个人的信息啊a、b、c,分别代表第i个人的上级是a,他的 4 忠诚度为b,他的能力为c。后面有m次询问。他问你能不能找到一个能力比他高的,且忠诚度最高的人。(注意能力只需要 5 大于此人就可以,不需 阅读全文
posted @ 2019-12-02 16:08 kongbursi 阅读(269) 评论(0) 推荐(0) 编辑
摘要:题目:传送门 题意: 给你n个数,要进行m次操作 对于每次操作(l,r,v,p)代表:在区间[l,r]中有x(这个x是需要你自己找出来的)个数小于v,你需要把序列的第p个位置的值改成u∗k/(r−l + 1) 最后输出序列就完了 题解: 因为他要找出来区间中有多少数小于v,所以我们就要维护一个数组a 阅读全文
posted @ 2019-12-02 16:06 kongbursi 阅读(329) 评论(0) 推荐(0) 编辑
摘要:题意: 给你n个数,你只能对这n个数进行两种操作 1、C a b c :给区间[a,b]的每一个数都加上c 2、Q a b :询问区间[a,b]中所有数的和 题解: 首先我们要找到对于分块后的每一块我们要维护什么东西。题意很清晰,我们要维护一个区间中所有数的和。对于区间更新以及查询还是看代码吧! 代 阅读全文
posted @ 2019-12-02 15:55 kongbursi 阅读(136) 评论(0) 推荐(0) 编辑
摘要:分块算法: 分块就是对暴力方法的一种优化: _ 假设我们总共的序列长度为n,然后我们把它切成√n 块,然后把每一块里的东西当成一个整体来看,完整块:被操作区间完全覆盖的块不完整块:操作区间不完全覆盖的块 在对区间的询问中,对于完整块我们就去找维护这个块的数组。比如我们要找[l,r]这个区间中所有数的 阅读全文
posted @ 2019-12-02 15:44 kongbursi 阅读(186) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示