Skip to content

Commit f08b1e6

Browse files
authored
Create 593. Valid Square
1 parent e365c40 commit f08b1e6

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
/**
2+
* @param {number[]} p1
3+
* @param {number[]} p2
4+
* @param {number[]} p3
5+
* @param {number[]} p4
6+
* @return {boolean}
7+
*/
8+
var validSquare = function(p1, p2, p3, p4) {
9+
function distance(a,b){
10+
let dx = a[0] - b[0];
11+
let dy = a[1] - b[1];
12+
13+
return dx * dx + dy * dy;
14+
}
15+
16+
let arr = [
17+
distance(p1, p2),
18+
distance(p1, p3),
19+
distance(p1, p4),
20+
distance(p2, p3),
21+
distance(p2, p4),
22+
distance(p3, p4)
23+
];
24+
25+
arr.sort((a, b) => a - b);
26+
27+
return (
28+
arr[0] > 0 &&
29+
arr[0] === arr[1] &&
30+
arr[1] === arr[2] &&
31+
arr[2] === arr[3] &&
32+
arr[4] === arr[5]
33+
);
34+
};

0 commit comments

Comments
 (0)