코테/BOJ
백준 14606 [피자 (Small)] 파이썬
동 캄
2021. 12. 1. 23:47
반응형
https://www.acmicpc.net/problem/14606
14606번: 피자 (Small)
예제1의 입력이 1이므로, 게임 시작부터 갑이 분리할 수 있는 피자탑이 없습니다. 따라서 갑이 얻는 즐거움은 0입니다. 예제2의 정답 3은 다음과 같은 과정을 통해 얻어집니다. 먼저 놀이를 시작
www.acmicpc.net
#14606
n=int(input())
dp=[0]*(n+1)
for i in range(1,n+1):
for _ in range(1,i+1):
dp[i]=dp[i//2]+dp[i-i//2]+(i//2)*(i-i//2)
print(dp[n])
1부터 시작해서 n까지 DP 값을 갱신해나간다.
i번째 값은 (i//2 박스를 나눌 때의 즐거움) + (i-i//2 박스를 나눌 때의 즐거움) + (i//2)*(i-i//2) 이다.
반응형