-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCollideCircle.java
More file actions
79 lines (51 loc) · 1.76 KB
/
CollideCircle.java
File metadata and controls
79 lines (51 loc) · 1.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
import java.util.Scanner;
public class CollideCircle {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int k = in.nextInt();
int[] r = new int[n];
for(int r_i=0; r_i < n; r_i++){
r[r_i] = in.nextInt();
}
// Write Your Code Here
double area = 0;
double[] areaArr = new double[n-k+1];
int pointer = 0;
int[] modifiedr= new int[n];
int sum = 0;
if(k == n-1)
{
for (int i = 0; i < r.length; i++) {
sum = sum + r[i];
}
area = Math.PI * Math.pow(sum, 2);
}else
{
double dummyArea =0 ;
for (int i = 0; i < k; i++) {
for (int kl = 0; kl < n-i; kl++) {
modifiedr = new int[r.length - i - 1];
modifiedr[kl] = r[kl] + r[kl+1];
for (int j = 0; j < modifiedr.length; j++) {
if(j != kl)
{
modifiedr[j] =r[pointer] + r[j+1] ;
}
}
for (int m = 0; m < modifiedr.length; m++) {
dummyArea = dummyArea + ( Math.PI * Math.pow(modifiedr[m], 2) );
}
areaArr[kl] = dummyArea;
pointer++;
}
}
double dummysum = 0;
for (int i = 0; i < areaArr.length; i++) {
dummysum = dummysum + areaArr[i];
}
area = dummysum / areaArr.length;
}
System.out.println(area);
}
}