class Solution {
public:
static bool cmp(vector<int>& a,vector<int>& b){
if(a[0] == b[0])return a[1] < b[1];
return a[0] < b[0];
}
vector<int> bestCoordinate(vector<vector<int>>& towers, int radius) {
int N = towers.size();
vector<int> ans(N,0);
sort(towers.begin(),towers.end(),cmp);
for(int i=0;i<N;i++){
for(int j=0;j<N;j++){
double r = sqrt((towers[i][0] - towers[j][0])*(towers[i][0] - towers[j][0])+
(towers[i][1] - towers[j][1])*(towers[i][1] - towers[j][1]));
if(r <= double(radius)) ans[i] += int(towers[j][2]/(1+r));
}
}
int mx = -1;
int loc = 0;
for(int i=0;i<N;i++){
if(ans[i] > mx){
mx = ans[i];
loc = i;
}
}
vector<int> res(2,0);
res[0] = towers[loc][0];
res[1] = towers[loc][1];
return res;
}
};
No.250 - LeetCode1620. Coordinate With Maximum Network Quality
最新推荐文章于 2024-07-14 14:55:48 发布