文章目录

  • 题目
  • 代码

题目

给定平面上 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]]

代码

/** @lc app=leetcode.cn id=447 lang=java** [447] 回旋镖的数量*/// @lc code=start
class Solution {private int dis(int[] pa, int pb[]) {return (pa[0] - pb[0]) * (pa[0] - pb[0]) + (pa[1] - pb[1]) * (pa[1] - pb[1]);}public int numberOfBoomerangs(int[][] points) {int res = 0;for (int i = 0; i < points.length; i++) {// record中存储点i到所有其他点的距离出现的频次HashMap<Integer, Integer> record = new HashMap<>();for (int j = 0; j < points.length; j++)if (j != i) {// 计算距离时不进行开根运算, 以保证精度int dis = dis(points[i], points[j]);if (record.containsKey(dis))record.put(dis, record.get(dis) + 1);elserecord.put(dis, 1);}for (Integer dis : record.keySet())res += record.get(dis) * (record.get(dis) - 1);}return res;}
}
// @lc code=end

leetcode-回旋镖的数量(java版)相关推荐

  1. LeetCode 回旋镖的数量

    题目 给定平面上 n 对 互不相同 的点 points ,其中 points[i] = [xi, yi] .回旋镖 是由点 (i, j, k) 表示的元组 ,其中 i 和 j 之间的距离和 i 和 k ...

  2. leetcode -43 -字符串相乘 -java版

    文章目录 题目 代码 题目 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式. 示例 1: 输入: num1 = &quo ...

  3. leetcode 461. 汉明距离(Java版)

    题目 https://leetcode-cn.com/problems/hamming-distance/ 题解 使用 Java 中的按位异或 ^ 运算符:https://www.baeldung.c ...

  4. Leetcode题库-回旋镖的数量(java语言版)

    题目描述: 给定平面上 n 对不同的点,"回旋镖" 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序). 找到 ...

  5. leetcode 530. 二叉搜索树的最小绝对差(Java版)

    题目 https://leetcode-cn.com/problems/minimum-absolute-difference-in-bst/ 题解 中序遍历法. 本题要求二叉搜索树任意两节点差的绝对 ...

  6. leetcode 235. 二叉搜索树的最近公共祖先(Java版,树形dp套路)

    题目 原题地址:leetcode 235. 二叉搜索树的最近公共祖先 说明: 所有节点的值都是唯一的. p.q 为不同节点且均存在于给定的二叉搜索树中. 题解 关于 树形dp 套路,可以参考我的另一篇 ...

  7. 左神算法:最大值减去最小值小于或等于num的子数组的数量(Java版)

    本题来自左神<程序员面试代码指南>"最大值减去最小值小于或等于num的子数组的数量"题目. 题目 给定数组 arr 和整数 num,共返回有多少个子数组满足如下情况: ...

  8. LeetCode 447. 回旋镖的数量(哈希map+组合数)

    1. 题目 给定平面上 n 对不同的点,"回旋镖" 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序). 找到 ...

  9. [LeetCode] 447.回旋镖的数量(Easy)C语言题解

    题目 给定平面上 n 对不同的点,"回旋镖" 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序). 找到所有回 ...

最新文章

  1. 广西卫生职业技术学院计算机考试,广西卫生职业技术学院单招2021年春招分数线...
  2. Science子刊带来新遗传证据:早期人类驯化了自己
  3. mysql行锁和表锁
  4. matlab中线型和颜色控制
  5. php根据单词截取英文语句,php按单词截取字符串的方法
  6. 红帽7 -本地yum配置
  7. 手机上用的是的WAP协议 电脑上的是HTTP协议 这两个有什么不同
  8. 【HDU - 4786 】Fibonacci Tree (最小生成树变形,上下界贪心,tricks)
  9. 拓扑排序排课系统_视频结构化人脸布控系统
  10. *printf()格式化串安全漏洞分析(下)
  11. [HNOI 2010]Planar
  12. IDEA : IDEA好用的插件集锦
  13. 信息论实验一:信源熵的计算
  14. LCD的控制驱动及基与MCU接口的特点
  15. 右上角的引用文献格式_论文标注参考文献格式
  16. latex 定理环境,引理,定义,自定义 proof 环境
  17. ora-12514TNS 监听程序当前无法识别连接描述符中请求服务的解决
  18. 邮件营销有效吗?分享几个实用的电子邮件营销策略和技巧!
  19. CAN光纤转换器,光纤转can模块使用说明
  20. YUV与RGB互转各种公式 (YUV与RGB的转换公式有很多种,请注意区别)

热门文章

  1. selenium模拟登录淘宝
  2. 网页上点击。直接打开QQ聊天!!!
  3. 采用WPF进行开发的酒店管理系统源码
  4. Android - 仿iPhone调节音量/亮度
  5. x98air2+android+升级,台电X98 Air 3G(C5J6)升级安卓5.0,windows系统不受影响
  6. 呼死你泛滥 安全联盟提醒网民远离欺诈
  7. 计算机网络管理员技工题库,计算机网络管理员高级技师题库
  8. C51教程 第二个51程序: 跑马灯 流水灯
  9. vue3.0引入字体样式ttf文件
  10. 杨永智:创业者需具备的六大基因 五大攻略(上)