본문 바로가기
✨ Club|Project/파이 \ 𝒩ew𝓣𝓮ams 알고리즘 스터디 | Algorithm

🎶 𝒩ew𝓣𝓮ams ♫ - 정모

by 정람지 2024. 5. 28.

*g5 s#100..-@$me

골5랜디

유리는 공모전 마감임박이슈로 빠졌다


오 딱 봤는데

국렬님이 등장하길래 보니까

SUAPC 문제다

 

 

낑..

규칙 알아내보겟답시고 n = 4까지 하나하나 그리다가..

이상한 식 세우다가새클린언니의 아이디어 제공을 받았다

 

기댓값의 선형성

확률변수의 선형 조합의 기댓값이 각 확률변수의 기댓값의 선형 조합과 같다는 성질을 의미!!

 

그니까 각각 맨처음 한개 켜지고 나머지 다 꺼질 때의 확률 ~ 더하기 첫번째 두번째 거 켜지고 나머지 다 꺼질 때의확률~ 더하기 ... 이거를첫번째 거가 켜질 확률 + 두번째 거가 켜질 확률 + n번째 거가 켜질 확률로 볼 수 있다그니까 묶음을 풀어서 개별적으로 계산 가능

 

사이 꼬마전구는 앞뒤의 확률로 계산해서 구하면대겟지

import sys

# 전구의 개수
N = int(sys.stdin.readline())

#  $i$번째 전구에 불이 들어올 확률
light_on_list = list(map(float, sys.stdin.readline().split()))

# 큰전구 켜질 확률 먼저 더하기
result = sum(light_on_list)

# 꼬마전구들 확률 계산해서 더하기
for i in range(N-1):
    result += (1-light_on_list[i]) * light_on_list[i+1]
    result += (light_on_list[i]) * (1-light_on_list[i+1])

print(result)

맞맞