Pagini recente » Cod sursa (job #1152704) | Cod sursa (job #3223081) | Cod sursa (job #2614663) | Cod sursa (job #1634798) | Cod sursa (job #346655)
Cod sursa(job #346655)
#include <cstdio>
#define file_in "ferma.in"
#define file_out "ferma.out"
#define Nmax 10010
#define Kmax 1001
int N,K;
int i,j,k,sum;
int A[Kmax][Nmax];
int P[Nmax];
inline int max(int a, int b) { return a>b?a:b; }
int main()
{
freopen(file_in,"r",stdin);
freopen(file_out,"w",stdout);
scanf("%d %d", &N, &K);
for (i=1;i<=N;++i)
scanf("%d", &P[i]);
for (i=1;i<=K;++i)
for (j=1;j<=N;++j)
{
sum=0;
for (k=1;k<j;++k)
{
sum+=P[k];
A[i][j]=max(A[i][j-1],A[i-1][k]+sum);
}
}
/*for (i=1;i<=K;++i)
{
for (j=1;j<=N;++j)
printf("%d ", A[i][j]);
printf("\n");
}*/
printf("%d", A[K][N]);
fclose(stdin);
fclose(stdout);
return 0;
}