#include<iostream>
#include<algorithm>
#include<queue>
#include<vector>
#include<cstring>
using namespace std;
typedef long long ll;
ll a[1000010],d[1000010],p[1000010],p2[1000010];
int main(){
ll n,ans=0;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
p[i]=p[i-1]+a[i];
p2[i]=p2[i-1]+i*a[i];
}
for(ll i=1;i<=n;i++){
d[i]=p2[i];
for(ll j=1;j<i;j++){
d[i]=max(d[i],d[j]+(p2[i]-p2[j+1])-(j+1)*(p[i]-p[j+1]));
}
}
cout<<d[n];
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
32968 KB |
Output is correct |
2 |
Incorrect |
3 ms |
32968 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1000 ms |
32964 KB |
Program timed out |
2 |
Halted |
0 ms |
0 KB |
- |