🧩PS/🥈Nomal
[C/C++] 백준 16198번 - 에너지 모으기
Cocoon_
2021. 3. 20. 23:00
반응형
<코드>
#include<iostream>
#include<algorithm>
#include<deque>
using namespace std;
int N, x, ans;
deque<int> dq;
void solve(int now, int sum)
{
if (dq.size() == 2)
{
ans = max(ans, sum);
return;
}
int size = dq.size();
for (int i = 1; i < size - 1; i++)
{
int next = dq[i];
dq.erase(dq.begin() + i);
solve(next, sum + dq[i - 1] * dq[i]);
dq.insert(dq.begin() + i, next);
}
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cin >> N;
for (int i = 0; i < N; i++)
{
cin >> x;
dq.push_back(x);
}
for (int i = 1; i < N - 1; i++)
{
solve(i, 0);
}
cout << ans;
}
16198번: 에너지 모으기
N개의 에너지 구슬이 일렬로 놓여져 있고, 에너지 구슬을 이용해서 에너지를 모으려고 한다. i번째 에너지 구슬의 무게는 Wi이고, 에너지를 모으는 방법은 다음과 같으며, 반복해서 사용할 수 있
www.acmicpc.net
반응형