[실버 1] 백준 16198 - 에너지 모으기 (파이썬)
[실버 1] 백준 16198 - 에너지 모으기 (파이썬)
2025.04.30https://www.acmicpc.net/problem/16198풀이구슬이 일렬로 놓여 있고, 양끝 구슬을 제외하고 하나를 고를 수 있다.고른 구슬을 제거하면서 얻는 에너지는 (왼쪽 구슬 번호) * (오른쪽 구슬 번호)구슬이 2개 남을때까지 반복얻을 수 있는 에너지의 최대값을 구하라if len(a) == 2: return w구슬이 2개만 남으면 더이상 고를 수 없으니, 지금까지 모은 에너지를 반환한다.재귀 호출은 다음과 같이 진행한다.for i in range(1, len(a) - 1):맨 앞과 맨 뒤 구슬을 제외한 가운데 구슬만 고를 수 있다.na = a[:i] + a[i+1:]i번째 구슬을 제거해서 새로운 리스트를 만든다.tmp = dfs(na, w + a[i-1] * a[i+1])i번째 구슬..