题目:
题解:
思路:直接暴力枚举判断在圆内点的个数就好了。
代码如下:
class Solution {
public:
// 直接暴力枚举判断每个询问内的点的个数
vector<int> countPoints(vector<vector<int>>& points, vector<vector<int>>& queries) {
vector<int> res;
for(auto& q:queries)
{
int x=q[0],y=q[1],r=q[2];
int cnt=0;
for(auto& p:points)
// <= 的优先级最低,所有左边可以不用括号括起来
// (x-a)^2+(y-b)^2<=r^2 表明(a,b)在圆内
if((x-p[0])*(x-p[0])+(y-p[1])*(y-p[1])<=r*r)
cnt++;
res.push_back(cnt);
}
return res;
}
};