Cod sursa(job #3250357)
| Utilizator | Data | 20 octombrie 2024 13:36:49 | |
|---|---|---|---|
| Problema | Euro | Scor | 35 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.58 kb |
#include <bits/stdc++.h>
#define NN 34570
using namespace std;
ifstream fin ("euro.in");
ofstream fout ("euro.out");
long long n, t, aux, val;
long long sp[NN], dp[NN];
int main()
{
fin >> n >> t;
for(int i = 1 ; i <= n ; i++)
{
fin >> val;
sp[i] = sp[i-1] + val;
}
for(int i = 1 ; i <= n ; i++)
{
dp[i] = sp[i] * i - t;
for(int j = 1 ; j < i ; j++)
{
aux = dp[j] + (sp[i] - sp[j]) * i - t;
dp[i] = max(aux, dp[i]);
}
}
fout << dp[n];
return 0;
}
