京东笔试我是真的无语了,到底错哪了,大神帮看看吧
一个半径R的圆,圆内取一点作圆心,做半径为r的圆,求两圆相交的概率。
我就分了r < R, r > R && r < 2*R, r > 2*R这几种情况考虑,然后画图分析了一下,
public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int R = in.nextInt(); int r = in.nextInt(); double Rs = R * R * 3.14; double x = 0; if (r < R) { int d = R - r; x = (Rs - d * d * 3.14) / Rs; } else if (r == R) { x = 1; }else if (r > R && r < 2 * R) { int d = r - R; x = (Rs - d * d * 3.14) / Rs; }else { x = 0; } System.out.println(x); } }最后一直只通过40%,我是真的无语了,死活找不出问题唉,