LeetCode(447)——回旋镖的数量(JavaScript)
给定平面上 n 对不同的点,“回旋镖” 是由点表示的元组 (i, j, k)
,其中 i
和 j
之间的距离和 i
和 k
之间的距离相等(需要考虑元组的顺序)。
找到所有回旋镖的数量。你可以假设 n 最大为 500,所有点的坐标在闭区间 [-10000, 10000] 中。
示例:
输入:
[[0,0],[1,0],[2,0]]
输出:
2
解释:
两个回旋镖为 [[1,0],[0,0],[2,0]] 和 [[1,0],[2,0],[0,0]]
/*** @param {number[][]} points* @return {number}*/
var numberOfBoomerangs = function(points) {};
个人解法
var numberOfBoomerangs = function(points) {//判断三个点能否满足回旋镖条件function fun(arr1 , arr2 , arr3){if(Math.pow(arr1[0] - arr2[0] , 2) + Math.pow(arr1[1] - arr2[1] , 2) === Math.pow(arr1[0] - arr3[0] , 2) + Math.pow(arr1[1] - arr3[1] , 2)){return true;}if(Math.pow(arr2[0] - arr1[0] , 2) + Math.pow(arr2[1] - arr1[1] , 2) === Math.pow(arr2[0] - arr3[0] , 2) + Math.pow(arr2[1] - arr3[1] , 2)){return true;}if(Math.pow(arr3[0] - arr2[0] , 2) + Math.pow(arr3[1] - arr2[1] , 2) === Math.pow(arr3[0] - arr1[0] , 2) + Math.pow(arr3[1] - arr1[1] , 2)){return true;}return false;}var result = 0;//三重循环对每三个点进行判断for(var i = 0; i < points.length - 2; i++){for(var j = i + 1; j < points.length - 1; j++){for(var k = j + 1; k < points.length; k++){if(fun(points[i] , points[j] , points[k])){//只要满足就加2result += 2;}}}}return result;
};
LeetCode(447)——回旋镖的数量(JavaScript)相关推荐
- [LeetCode] 447.回旋镖的数量(Easy)C语言题解
题目 给定平面上 n 对不同的点,"回旋镖" 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序). 找到所有回 ...
- LeetCode 447. 回旋镖的数量(哈希map+组合数)
1. 题目 给定平面上 n 对不同的点,"回旋镖" 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序). 找到 ...
- 回旋数字c语言数组,LeetCode 447*. 回旋镖的数量(Python)
给定平面上 n 对不同的点,"回旋镖" 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序). 找到所有回旋镖的 ...
- leetcode.447 回旋镖的数量
这道题,有几点: 1.首先固定一个点,然后求其他点到这个点的距离集合, 2.在这个距离集合中,相等距离的有m个,则回旋镖数就有组合C(m, 2) * 2个, 3.回到步骤1 有个优化的方法,在存储距离 ...
- 447. 回旋镖的数量
447. 回旋镖的数量 给定平面上 n 对 互不相同 的点 points ,其中 points[i] = [xi, yi] .回旋镖 是由点 (i, j, k) 表示的元组 ,其中 i 和 j 之间的 ...
- 447 回旋镖的数量(暴力枚举)
1. 问题描述: 给定平面上 n 对互不相同的点 points ,其中 points[i] = [xi, yi] .回旋镖是由点 (i, j, k) 表示的元组 ,其中 i 和 j 之间的距离和 i ...
- 447 回旋镖的数量
题目描述: 给定平面上 n 对不同的点,"回旋镖" 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序). 找到 ...
- 「每日一题」回旋镖的数量
这是 LeetCode 上 2021-9-13 的每日一题:「447. 回旋镖的数量」 1. 题目描述 给定平面上n对互不相同的点points,其中points[i] = [xi, yi].回旋镖是由 ...
- 《LeetCode之每日一题》:148.回旋镖的数量
回旋镖的数量 有关题目 题解 题目链接: 回旋镖的数量 有关题目 给定平面上 n 对 互不相同 的点 points ,其中 points[i] = [xi, yi] .回旋镖 是由点 (i, j, k ...
最新文章
- 【算法】模拟退火算法解决TSP问题的matlab实现
- LOJ#6048. 「雅礼集训 2017 Day10」数列(线段树)
- [LeetCode]题解(python):058-Length of Last Word
- 看到一个blog的标语,有意思!
- 这个算是编码的坏习惯吧?
- Ubuntu 14.04 16.04 安装最新的 docker
- oracle查询表在库中所占空间(表名所有字母必须大写‘table_name’)
- 三丰三坐标编程基本步骤_ABB 机器人 | 输送链跟踪配置和编程步骤
- 20190814 On Java8 第四章 运算符
- paip.navicat form mysql导入文本文件时CPU占用100%的解决
- UNIX文件系统概述
- 在Android系统中,F2FS 文件系统问题分析步骤
- Concis组件库封装——Avatar头像
- Audio Hijack教程:轻松捕获iOS设备中的音频
- 操作系统 (二): 进程与线程
- 支持向量机理论(SVM)
- Windows11镜像下载及安装
- 原子物理与原子核物理知识结构(含链接)
- shell脚本的坑坑洼洼
- K8S(一)VMware Fusion 构建基本k8s集群
热门文章
- ubuntu16.04 虚拟机装机后常用操作
- 区块链软件开发:区块链+餐饮
- 敏捷宣言和背后的原则 (Agile Manifesto and the principles behind)
- Python学习-07-面向对象编程初级
- SpringMVC 单文件上传与多文件上传
- Git本地版本控制备忘
- ORACLE中CONSTRAINT的四对属性
- myeclipse 上安装 Maven3
- ]网易游戏游戏开发工程师
- Your account has been locked out. Please contact the system administrator for further assistance.