7276: BZOJ3276:磁力
Memory Limit:128 MB
Time Limit:1 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
你现在处在一个2维平面中的(x,y)上,并且你的手上有一块磁铁。
而在平面内,还有n块磁铁,每块磁铁都可以看做一个点,你的任务就是得到最多的磁铁。每一块磁铁都有五个属性,x,y,m,p,r,分别表示磁铁的横坐标,磁铁的纵坐标,磁铁的重量,磁铁的吸引力,磁铁的吸引半径。
你手上的某个磁铁a想要把另一块在外面的磁铁b吸引过来的条件如下:
1.磁铁b和磁铁a之间的距离小于等于磁铁a的吸引半径。这里距离计算的是欧几里得距离。
2.磁铁b的重量小于等于磁铁a的吸引力。
任何被你吸过来的磁铁都可以用来吸引新的磁铁。每块磁铁可以吸引无数多次,但是每次只能有一块磁铁在吸引,不能多块同时吸引。同时你也只能呆在(x,y)这个位子上。
现在你想要知道,你最多可以吸引多少散落的磁铁。
输入格式
第一行有五个整数,x,y,p,r,N。其中x,y,p,r分别表示你的坐标和你一开始拥有的磁铁的吸引力,吸引半径。N表示散落的磁铁数目。
接下来N行每行5个整数,xi,yi,mi,pi,ri,依次描述第i块散落的磁铁的横坐标,纵坐标,重量,吸引力,吸引半径。
输出格式
输出一行,包含一个整数,你最多可以吸引的散落的磁铁数目。
样例输入
0 0 5 10 5 5 4 7 11 5 -7 1 4 7 8 0 2 13 5 6 2 -3 9 3 4 13 5 1 9 9
样例输出
3
提示
对于100%的数据,n<=250000.所有坐标都在-10^9到10^9之间。所有m p r都在1到10^9之间。输入数据保证不含有任何两块磁铁在同一个位置。
题目来源
树套树 树状数组