본문 바로가기

PS/boj

[BOJ] 17211 좋은 날 싫은 날

문제 링크

www.acmicpc.net/problem/17211

풀이

기분 좋은 날의 다음 날이 기분 좋을 확률을 $p_1$
기분 좋은 날의 다음 날이 기분 싫을 확률을 $p_2$
기분 나쁜 날의 다음 날이 기분 좋을 확률을 $p_3$
기분 나쁜 날의 다음 날이 기분 나쁠 확률을 $p_4$ 이라고 하자.

$n-1$일 뒤의 기분 좋을 확률을 $q_{n-1}$이라고 하면 기분 나쁠 확률은 $1 - q_{n-1}$이다.
따라서, $q_n = q_{n-1} * p_1 + (1 - q_{n-1}) * p_3$으로 구할 수 있다.

Java 코드

더보기
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder out = new StringBuilder();

        StringTokenizer st = new StringTokenizer(in.readLine());
        int N = Integer.parseInt(st.nextToken());
        double M = Integer.parseInt(st.nextToken());

        double[] arr = Arrays.stream(in.readLine().split(" ")).mapToDouble(Double::parseDouble).toArray();
        M = (1 - M) * 1000;

        for (int i = 0; i < N; ++i) M = M * arr[0] + (1000 - M) * arr[2];

        System.out.println(String.format("%.0f", M));
        System.out.println(String.format("%.0f", 1000 - M));
    }
}

'PS > boj' 카테고리의 다른 글

[BOJ] 19236 청소년 상어  (0) 2021.02.17
[BOJ] 1323 숫자 연결하기  (0) 2021.02.15
[BOJ] 16952 체스판 여행 2  (0) 2021.02.09
[BOJ] 10497 Hitting the Targets  (0) 2021.02.06
[BOJ] 15487 A[j]-A[i]+A[l]-A[k]  (0) 2021.02.03