반응형
문제 링크
코드
#include <bits/stdc++.h>
using namespace std;
int main(void) {
ios::sync_with_stdio(0);
cin.tie(0);
int n, curr;
double gg, gb, bg, bb;
vector<double> good, bad;
cin >> n >> curr;
cin >> gg >> gb >> bg >> bb;
if (curr == 0) {
good.push_back(gg);
bad.push_back(gb);
}
else {
good.push_back(bg);
bad.push_back(bb);
}
for (int i = 1; i < n; i++) {
good.push_back(good[i-1] * gg + bad[i-1] * bg);
bad.push_back(good[i-1] * gb + bad[i-1] * bb);
}
cout << fixed;
cout.precision(0);
cout << good[n-1] * 1000 << '\n' << bad[n-1] * 1000;
}
설명
좋은 날 -> 좋은 날일 확률을 gg, 좋은 날 -> 싫은 날일 확률을 gb,
싫은 날 -> 좋은 날일 확률을 bg, 싫은 날 -> 싫은 날일 확률을 bb 라고 하면,
n번째 날에 좋은 날일 확률 = n-1번째 날에 좋은 날일 확률 * gg + n-1번째 날에 싫은 날일 확률 * bg
n번째 날에 싫은 날일 확률 = n-1번째 날에 싫은 날일 확률 * gb + n-1번째 날에 좋은 날일 확률 * bb 이다.
(주의) 기록용으로 작성한 글입니다. 좋은 코드가 아닐 수 있습니다.
댓글 환영합니다!
반응형
'Algorithm > BOJ' 카테고리의 다른 글
[백준/BOJ] 18258번 - 큐 2 (C++) (0) | 2022.03.26 |
---|---|
[백준/BOJ] 17215번 - 볼링 점수 계산 (C++) (0) | 2022.03.26 |
[백준/BOJ] 17210번 - 문문문 (C++) (0) | 2022.03.26 |
[백준/BOJ] 16435번 - 스네이크버드 (C++) (0) | 2022.03.26 |
[백준/BOJ] 15947번 - 아기 석환 뚜루루 뚜루 (C++) (0) | 2022.03.25 |
댓글