Generate Random Point in a Circle LeetCode solution in Java

1
class Solution {
2
double radius;
3
double x_center;
4
double y_center;
5
Random r = new Random();
6

7
public Solution(double radius, double x_center, double y_center) {
8
this.radius = radius;
9
this.x_center = x_center;
10
this.y_center = y_center;
11
}
12

13
public double[] randPoint() {
14
double angle = r.nextDouble(Math.PI * 2);
15
// For probability is inversely proportional to radius, we use sqrt of random number.
16
double rad = Math.sqrt(r.nextDouble()) * radius;
17
double[] ret = new double[2];
18
ret[0] = rad * Math.cos(angle) + x_center;
19
ret[1] = rad * Math.sin(angle) + y_center;
20
return ret;
21
}
22
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0