关闭

Leetcode Number of Boomerangs

标签: leetcode
66人阅读 评论(0) 收藏 举报
分类:

题意:求一个平面中,一个点到其他两个点的距离相等的点,这样的点一共有多少组。

思路:求出所有两两点之间的距离,用hash统计距离相同的点。

class Solution {
public:
    int numberOfBoomerangs(vector<pair<int, int>>& points) {
        
        vector<vector<double> > distance;
        for(int i = 0; i < points.size(); ++ i) {
            vector<double> temp;
            for(int j = 0; j < points.size(); ++ j) {
                temp.push_back(dis(points[i], points[j]));
            }
            distance.push_back(temp);
        }
       
        int re = 0;
        for(int i = 0; i < points.size(); ++ i) {
            map<double, int> mym; //cout << "here" << endl;
            for(int j = 0; j < points.size(); ++ j) {
                mym[distance[i][j]] ++;
            }
            std::map<double, int>::iterator it;
            for(it = mym.begin(); it != mym.end(); ++ it) {
                if(it->second > 1) re += (it->second - 1) * it->second;
            }
        }
        
        return re;
    }
    
    double dis(pair<int, int> a, pair<int, int> b) {
        double dx = a.first - b.first;
        double dy = a.second - b.second;
        return sqrt(dx * dx + dy * dy);
    }
    
    
};


0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:29363次
    • 积分:2229
    • 等级:
    • 排名:第16838名
    • 原创:202篇
    • 转载:8篇
    • 译文:0篇
    • 评论:0条
    文章分类