5024 : 민아의 여름 방학
•시간제한: 2.000 S
•메모리제한: 256 MB
•제출: 7
•통과: 5
•만든사람: suakii
문제 설명
민아의 여름 방학은 총 $N$일입니다.
민아는 $i$번째 날($1 \le i \le N$)의 공부 시간을 매일 아침 주사위를 굴려 다음과 같은 규칙으로 결정합니다.
1. 매일 아침 1부터 6까지의 눈이 있는 일반적인 정육면체 주사위를 한 번 던집니다.
2. 주사위 눈이 1 또는 2가 나온 경우: $A_i$시간 동안 공부합니다.
3. 주사위 눈이 3, 4, 5 또는 6이 나온 경우: $B_i$시간 동안 공부합니다.
민아의 여름 방학 전체 기간 동안의 총 공부 시간의 기댓값을 구하는 프로그램을 작성하십시오.
[1. 기댓값(Expected Value)의 수학적 정의]
확률변수 $X$가 취할 수 있는 값들을 $x_k$, 그 값이 나타날 확률을 $p_k$라고 할 때, 기댓값 $E(X)$는 각 결과값에 해당 확률을 곱한 것들의 총합으로 정의됩니다.
$$\displaystyle E(X) = \sum_{k} \Big( x_k \times p_k \Big)$$
[2. 하루 공부 시간의 기댓값]
주사위의 6가지 눈($1 \sim 6$)이 나올 확률은 각각 $\displaystyle \frac{1}{6}$로 모두 같습니다.
• 1 또는 2가 나올 확률: $\displaystyle \frac{2}{6} = \frac{1}{3}$ (이때 공부 시간은 $A_i$시간)
• 3, 4, 5, 6이 나올 확률: $\displaystyle \frac{4}{6} = \frac{2}{3}$ (이때 공부 시간은 $B_i$시간)
따라서 $i$번째 날의 공부 시간 기댓값 $E_i$는 다음과 같습니다.
$$\displaystyle E_i = \left( A_i \times \frac{1}{3} \right) + \left( B_i \times \frac{2}{3} \right) = \frac{A_i + 2B_i}{3}$$
[3. 총 공부 시간의 기댓값 공식]
기댓값의 선형성에 의해, 방학 전체($N$일) 동안의 총 공부 시간 기댓값은 매일의 공부 시간 기댓값들의 총합과 같습니다.
$$\displaystyle \text{총 공부 시간 기댓값} = \sum_{i=1}^{N} E_i = \sum_{i=1}^{N} \frac{A_i + 2B_i}{3} = \frac{1}{3} \sum_{i=1}^{N} (A_i + 2B_i)$$
따라서 각 날짜마다 $\displaystyle \frac{A_i + 2B_i}{3}$를 계산하여 누적합을 구하면 방학 전체의 총 공부 시간 기댓값이 됩니다.
[제약 조건]
• $2 \le N \le 200\,000$
• $0 \le A_i, B_i \le 24$
• 입력되는 모든 값은 정수입니다.
민아는 $i$번째 날($1 \le i \le N$)의 공부 시간을 매일 아침 주사위를 굴려 다음과 같은 규칙으로 결정합니다.
1. 매일 아침 1부터 6까지의 눈이 있는 일반적인 정육면체 주사위를 한 번 던집니다.
2. 주사위 눈이 1 또는 2가 나온 경우: $A_i$시간 동안 공부합니다.
3. 주사위 눈이 3, 4, 5 또는 6이 나온 경우: $B_i$시간 동안 공부합니다.
민아의 여름 방학 전체 기간 동안의 총 공부 시간의 기댓값을 구하는 프로그램을 작성하십시오.
[1. 기댓값(Expected Value)의 수학적 정의]
확률변수 $X$가 취할 수 있는 값들을 $x_k$, 그 값이 나타날 확률을 $p_k$라고 할 때, 기댓값 $E(X)$는 각 결과값에 해당 확률을 곱한 것들의 총합으로 정의됩니다.
$$\displaystyle E(X) = \sum_{k} \Big( x_k \times p_k \Big)$$
[2. 하루 공부 시간의 기댓값]
주사위의 6가지 눈($1 \sim 6$)이 나올 확률은 각각 $\displaystyle \frac{1}{6}$로 모두 같습니다.
• 1 또는 2가 나올 확률: $\displaystyle \frac{2}{6} = \frac{1}{3}$ (이때 공부 시간은 $A_i$시간)
• 3, 4, 5, 6이 나올 확률: $\displaystyle \frac{4}{6} = \frac{2}{3}$ (이때 공부 시간은 $B_i$시간)
따라서 $i$번째 날의 공부 시간 기댓값 $E_i$는 다음과 같습니다.
$$\displaystyle E_i = \left( A_i \times \frac{1}{3} \right) + \left( B_i \times \frac{2}{3} \right) = \frac{A_i + 2B_i}{3}$$
[3. 총 공부 시간의 기댓값 공식]
기댓값의 선형성에 의해, 방학 전체($N$일) 동안의 총 공부 시간 기댓값은 매일의 공부 시간 기댓값들의 총합과 같습니다.
$$\displaystyle \text{총 공부 시간 기댓값} = \sum_{i=1}^{N} E_i = \sum_{i=1}^{N} \frac{A_i + 2B_i}{3} = \frac{1}{3} \sum_{i=1}^{N} (A_i + 2B_i)$$
따라서 각 날짜마다 $\displaystyle \frac{A_i + 2B_i}{3}$를 계산하여 누적합을 구하면 방학 전체의 총 공부 시간 기댓값이 됩니다.
[제약 조건]
• $2 \le N \le 200\,000$
• $0 \le A_i, B_i \le 24$
• 입력되는 모든 값은 정수입니다.
입력 설명
첫째 줄에 여름 방학 일수 $N$이 주어집니다.
둘째 줄에 $A_1, A_2, \dots, A_N$이 공백으로 구분되어 주어집니다.
셋째 줄에 $B_1, B_2, \dots, B_N$이 공백으로 구분되어 주어집니다.
둘째 줄에 $A_1, A_2, \dots, A_N$이 공백으로 구분되어 주어집니다.
셋째 줄에 $B_1, B_2, \dots, B_N$이 공백으로 구분되어 주어집니다.
출력 설명
기댓값을 출력하십시오.
정답과의 절대 오차 또는 상대 오차가 $10^{-6}$ 이하라면 정답으로 인정합니다.
(단, 출력값을 $A$, 실제 정답을 $B$라 할 때 절대 오차는 $|A - B|$, 상대 오차는 $\frac{|A - B|}{|B|}$로 정의합니다.)
정답과의 절대 오차 또는 상대 오차가 $10^{-6}$ 이하라면 정답으로 인정합니다.
(단, 출력값을 $A$, 실제 정답을 $B$라 할 때 절대 오차는 $|A - B|$, 상대 오차는 $\frac{|A - B|}{|B|}$로 정의합니다.)
입력 예시
COPY
복사되었습니다!
복사되었습니다!
2
24 24
12 12
출력 예시
COPY
복사되었습니다!
복사되었습니다!
32.000000000000