조약돌 갯수가 뽑는 갯수보다 클 때만 공간이 열리며
이 때 1.0은 곱하기 누적의 plate다
공간에 개폐 or 다른 location으로의 서술
double로 잡아줌
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
// ISC
BufferedReader br =new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int M = Integer.parseInt(st.nextToken());
// D2F
st = new StringTokenizer(br.readLine()); // L2
int[] TP = new int[51];
int sum = 0;
for (int i = 0; i < M; i++) {
TP[i] = Integer.parseInt(st.nextToken());
sum += TP[i];
}
st = new StringTokenizer(br.readLine()); // L3
int K = Integer.parseInt(st.nextToken());
double[] probaility = new double[51];
double plate = 0.0;
// OP + OEC
for (int i = 0; i < M; i++) {
if (TP[i] >= K) {
probaility[i] = 1.0;
for (int k = 0; k < K; k++) {
probaility[i] *= (double) (TP[i] - k) / (sum - k);
}
}
plate += probaility[i];
}
// OEC
System.out.println(plate);
}
}
'Hard deck > reindexing d3' 카테고리의 다른 글
078 : 부녀회장이 될 테야 (0) | 2023.06.29 |
---|---|
081 : 순열의 순서 구하기 (0) | 2023.06.29 |
079 : 다리 놓기 (0) | 2023.06.28 |
077 : 이항계수 구하기 2 (0) | 2023.06.28 |
019 : Quick sort / K번째 수 구하기 (0) | 2023.06.28 |