Pagini recente » Cod sursa (job #2673468) | Cod sursa (job #2483998) | Cod sursa (job #2562518) | Cod sursa (job #506062) | Cod sursa (job #2654253)
#include <vector>
#include <fstream>
#include <algorithm>
#include <iostream>
using namespace std;
ifstream fin("avioane.in");
ofstream fout("avioane.out");
using VI = vector< int >;
VI v(N, 0);
int n, k, x;
int main() {
ios::sync_with_stdio(false);
fin.tie(0); fout.tie(0);
fin >> n;
VI v(n + 1, 0);
for (int i = 1; i <= n; i++)
fin >> v[i];
sort(v.begin(), v.begin() + n + 1);
int M = 0;
for (int i = 0; i <= n; i++)
for (int j = 0; j < i; j++)
{
int a = i * v[1], b = (j + 1) * v[i - j], c = dp[0][i];
dp[0][i] = max(c, max(a, b));
}
for (int i = 0; i <= n; i++)
for (int j = 0; j < i; j++)
{
int a = dp[0][i], b = ((j + 1) * v[i - j]) + (n - i) * v[i + 1], c = dp[1][i];
dp[1][i] = max(c, max(a, b));
c = dp[1][i];
M = max(M, c);
}
fout << M;
return 0;
}