728x90
https://www.acmicpc.net/problem/1404
메모리: 11,888 KB , 시간: 76 ms
사용 알고리즘: 브루트포스 알고리즘, 구현, 수학, 확률론
노가다로 풀었다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
// 각 선수들이 이길 확율
int[][] win = new int[8][8];
for (int i = 0; i < 8; i++) {
for (int j = i + 1; j < 8; j++) {
win[i][j] = Integer.parseInt(st.nextToken());
win[j][i] = 100 - win[i][j];
}
}
// 라운드 1에서 이길 확율
int[] round1 = new int[8];
for (int i = 0; i < 4; i++) {
round1[2 * i] = win[2 * i][2 * i + 1];
round1[2 * i + 1] = win[2 * i + 1][2 * i];
}
// 라운드 2에서 이길 확율
int[] round2 = new int[8];
for (int i = 0; i < 2; i++) {
round2[4 * i] = round1[4 * i] *
(round1[4 * i + 2] * win[4 * i][4 * i + 2] + round1[4 * i + 3] * win[4 * i][4 * i + 3]);
round2[4 * i + 1] = round1[4 * i + 1] *
(round1[4 * i + 2] * win[4 * i + 1][4 * i + 2] + round1[4 * i + 3] * win[4 * i + 1][4 * i + 3]);
round2[4 * i + 2] = round1[4 * i + 2] *
(round1[4 * i] * win[4 * i + 2][4 * i] + round1[4 * i + 1] * win[4 * i + 2][4 * i + 1]);
round2[4 * i + 3] = round1[4 * i + 3] *
(round1[4 * i] * win[4 * i + 3][4 * i] + round1[4 * i + 1] * win[4 * i + 3][4 * i + 1]);
}
// 라운드 3에서 이길 확율
long[] round3 = new long[8];
for (int i = 0; i < 4; i++) {
for (int j = 4; j < 8; j++) {
round3[i] += round2[j] * win[i][j];
}
round3[i] *= round2[i];
}
for (int i = 4; i < 8; i++) {
for (int j = 0; j < 4; j++) {
round3[i] += round2[j] * win[i][j];
}
round3[i] *= round2[i];
}
for (int i = 0; i < 8; i++) {
System.out.printf("%.10f ", (double) round3[i] * 0.00000000000001);
}
}
}728x90
'Problem Solving > BOJ' 카테고리의 다른 글
| [백준, BOJ 15732] 도토리 숨기기 (java) (0) | 2025.05.23 |
|---|---|
| [백준, BOJ 12978] 스크루지 민호 2 (java) (0) | 2025.05.22 |
| [백준, BOJ 1326] 폴짝폴짝 (java) (0) | 2025.04.16 |
| [백준, BOJ 5585] 거스름돈 (java) (0) | 2025.04.15 |
| [백준, BOJ 10451] 순열 사이클 (java) (0) | 2025.04.15 |