티스토리 뷰
728x90
https://www.acmicpc.net/problem/13258
- 문제 :
스타트링크 은행은 고전적인 방식의 이자를 지급하는 대신에 복권 제도를 이용한 이자를 지급하고 있다. 이 제도는 은행에게 돈을 조금 더 적게 쓰게 만들어주지만, 대부분의 사람들은 그 차이를 눈치채지 못한다. 이 은행의 이자 시스템은 다음과 같이 이루어져 있다.
금요일 저녁에 은행은 계좌를 가지고 있는 사람들에게 잔고 1원당 티켓을 1개씩 지급한다. 모든 티켓을 지급한 후에는 티켓 하나를 랜덤하게 고른다. 모든 티켓이 당첨될 확률은 같다. 당첨된 사람의 계좌에 J원이 즉시 추가된다.
강호는 스타트링크 은행에 지금 막 계좌를 열고 나오는 길이다. 스타트링크 은행에 계좌를 가지고 있는 사람의 수와 잔고가 주어졌을 때, C주가 지난 후 강호의 통장 잔고의 기댓값을 구하는 프로그램을 작성하시오.
- 풀이 :
C주가 지난 후의 잔고 기대치는
원래 잔고 + (C * J * 원래 잔고)/티켓의 수로 계산할 수 있다.
- 소스코드 :
N = int(input())
cash = list(map(int,input().split()))
j = int(input())
C = int(input())
print(cash[0] + (cash[0]/sum(cash)) * C * j)
320x100
'Algorithm > Math' 카테고리의 다른 글
(Python) - BOJ(15654번) : N과 M (5) (0) | 2022.03.03 |
---|---|
(Python) - BOJ(11444번) : 피보나치 수 6 (0) | 2022.03.03 |
(Python) - BOJ(1009번) : 분산처리 (0) | 2022.03.01 |
(Python) - BOJ(1075번) : 나누기 (0) | 2022.02.28 |
(Python) - BOJ(1094번) : 막대기 (0) | 2022.02.25 |
댓글
© 2022 WonSeok, All rights reserved