- 1 public class Solution {
- 2 public int numberOfBoomerangs(int[][] points) {
- 3
- if (points == null || points.length == 0) {
- 4
- return 0;
- 5
- }
- 6 7 int res = 0;
- 8 HashMap hm = new HashMap();
- 9
- for (int i = 0; i) {
- 10
- for (int j = 0; j) {
- 11
- if (i == j) {
- 12
- continue;
- 13
- }
- 14 15 int dist = getDistance(points[i], points[j]);
- 16 hm.put(dist, hm.getOrDefault(dist, 0) + 1);
- 17
- }
- 18 19
- for (int val: hm.values()) {
- 20 res += val * (val - 1);
- 21
- }
- 22 hm.clear();
- 23
- }
- 24 25
- return res;
- 26
- }
- 27 28 private int getDistance(int[] p, int[] q) {
- 29 int dx = p[0] - q[0];
- 30 int dy = p[1] - q[1];
- 31
- return dx * dx + dy * dy;
- 32
- }
- 33
- }
来源: