CH#46 磁力块 分块】的更多相关文章

正解:分块+bfs 解题报告: 先放个传送门,然后瞎扯淡下QAQ 突然感觉不停课大概是正确的选择QAQ 大概实在是没有天赋?明明都知道正解是分块甚至还听了下解法感觉理解了,再看一次依然没想到解法,,,好菜啊,,,所以这种明明都落实过然而再看一次还是做不出来的题目是最最应该写题解的了QAQ 昂不叨叨了说说这题正解 1)  显然的是每块石头能吸的磁石是固定的,不存在改变次序之后会有改变,所以直接拿得到哪个磁石就把这个磁石能吸到的磁石都加入 队列,bfs就好了 这里是个最简单的暴力想法?还是不难想的我…
题目链接:传送门 描述在一片广袤无垠的原野上,散落着N块磁石.每个磁石的性质可以用一个五元组(x,y,m,p,r)描述,其中x,y表示其坐标,m是磁石的质量,p是磁力,r是吸引半径.若磁石A与磁石B的距离不大于磁石A的吸引半径,并且磁石B的质量不大于磁石A的磁力,那么A可以吸引B.小取酒带着一块自己的磁石L来到了这篇原野的(x0,y0)处,我们可以视为磁石L的坐标为(x0,y0).小取酒手持磁石L并保持原地不动,所有可以被L吸引的磁石将会被吸引过来.在每个时刻,他可以选择更换任意一块自己已经获得…
题意 磁力块 CH Round #46 - 「Adera 8」杯NOI模拟赛 描述 在一片广袤无垠的原野上,散落着N块磁石.每个磁石的性质可以用一个五元组(x,y,m,p,r)描述,其中x,y表示其坐标,m是磁石的质量,p是磁力,r是吸引半径.若磁石A与磁石B的距离不大于磁石A的吸引半径,并且磁石B的质量不大于磁石A的磁力,那么A可以吸引B. 小取酒带着一块自己的磁石L来到了这篇原野的(x0,y0)处,我们可以视为磁石L的坐标为(x0,y0).小取酒手持磁石L并保持原地不动,所有可以被L吸引的磁…
描述 在一片广袤无垠的原野上,散落着N块磁石.每个磁石的性质可以用一个五元组(x,y,m,p,r)描述,其中x,y表示其坐标,m是磁石的质量,p是磁力,r是吸引半径.若磁石A与磁石B的距离不大于磁石A的吸引半径,并且磁石B的质量不大于磁石A的磁力,那么A可以吸引B.小取酒带着一块自己的磁石L来到了这篇原野的(x0,y0)处,我们可以视为磁石L的坐标为(x0,y0).小取酒手持磁石L并保持原地不动,所有可以被L吸引的磁石将会被吸引过来.在每个时刻,他可以选择更换任意一块自己已经获得的磁石(当然也可…
磁力块 Description 在一片广袤无垠的原野上,散落着N 块磁石.每个磁石的性质可以用一个五元组 (x,y,m,p,r)描述,其中x,y 表示其坐标,m 是磁石的质量,p 是磁力,r 是吸引半径.若磁石 A 与磁石B 的距离不大于磁石A 的吸引半径,并且磁石B 的质量不大于磁石A 的磁力,那 么A 可以吸引B. 小取酒带着一块自己的磁石L 来到了这篇原野的(x0,y0)处,我们可以视为磁石L 的坐 标为(x0,y0).小取酒手持磁石L 并保持原地不动,所有可以被L 吸引的磁石将会被吸引过…
题意描述 磁力块 在平面内分布着 \(N\) 个磁力块,同时你的手上也有一块. 你一开始站在给定的坐标上,当磁力块之间满足互相吸引的条件时就可以吸引. 当你拿到新的磁石时你就可以用它来吸引更多的石头,求你能吸引到的最多的磁石个数. 算法分析 既然一开始就确定了磁石,我们只需要依次 BFS 手上已有的磁石并吸引更多的磁石入队即可. 关键在于判定磁石能否被吸引,如果直接循环判断复杂度是 \(O(N^2)\) 的,所以需要数据结构来优化. 维护一个多维的结构貌似可以用平衡树,但是更好的方法是用代码复杂…
将所有石头按距离远近排序,将所有取到的时候扔进堆里维护最大磁力强度. 贪心,每次用强度最强的磁石尝试吸引地上的石头,扫完区间以后,这块石头就再也不会用到了. 在此基础上可以做些小优化,比如说优化未取石头区间的起始点,比如说如果强度更小的石头范围也更小就不用它,等等. 比标解分块跑得还要快2333333 分块解法链接:http://www.cnblogs.com/SilverNebula/p/5929668.html #include<iostream> #include<cstdio&g…
还是一道好题的 对于一个磁石是否被吸引,有两个关键字:距离和质量.(二维偏序??) 好像是很厉害的分块姿势,先按第一关键字排序,在块中按第二关键字排 进行bfs,对于当前磁石,有1~k-1个块是第一关键字全部小于等于当前磁石的,那么暴力从块首往后,找到第一个第二关键字大于当前磁石属性的,那么前面都捡走,以后可以从这里开始找. 暴力枚举第k个块找答案. 一个优化就是找k的时候直接比较当前块的最大值就行了,因为当前的属性肯定是>kmin,<kmax滴 (垃圾CH本机AC提交WA幸好最后我搞对了)…
题目链接 : http://acm.hdu.edu.cn/showproblem.php?pid=4391 题意 : 给一段区间, 有两种操作 1 : 给 x 到 y 的区间染色为 z 2 : 查询 x 到 y 的区间内颜色z的数目 思路 : 这题的z最大2^31-1, 区间长度最大1e5, 用线段树将颜色离散化之后维护也存不下 所以用分块哈希, 将一个长度为n的区间分为sqrt(n)块分块维护, 每一块中都用map记录某些颜色的个数 分块哈希 : 修改, 查询一段区间, 对于完整覆盖到的区间,…
最近架构一个项目,实现行情的接入和分发,需要达到极致的低时延特性,这对于证券系统是非常重要的.接入的行情源是可以配置,既可以是Level-1,也可以是Level-2或其他第三方的源.虽然Level-1行情没有Level-2快,但是作为系统支持的行情源,我们还是需要优化它,使得从文件读取,到用户通过socket收到行情,端到端的时延尽可能的低.本文主要介绍对level-1行情dbf文件读取的极致优化方案.相信对其他的dbf文件读取应该也有借鉴意义. Level-1行情是由行情小站,定时每隔几秒把d…