Pagini recente » Cod sursa (job #531640) | Cod sursa (job #1774730) | Cod sursa (job #3204282) | Cod sursa (job #2149891) | Cod sursa (job #2709005)
#include <fstream>
using namespace std;
ifstream cin("ferma2.in");
ofstream cout("ferma2.out");
struct chestii{
int l,c,d;
};
chestii nr[1002][1002];
int main()
{
int sump=0,sumi=0,a,sum=0,n,k,i,j,min1;
cin>>n>>k;
for(i=1;i<=n;i++)
for(j=1;j<=i;j++)
{
cin>>a;
sum+=a;
nr[i][j].l=nr[i][j-1].l+a;
nr[i][j].c=nr[i-1][j].c+a;
nr[i][j].d=nr[i-1][j-1].d+a;
}
k=n-k;
for(i=1;i<=k;i++)
sumi+=nr[i][i].l;
min1=sumi;
for(i=2;i<=n-k+1;i++)
{
sumi+=nr[i+k-1][k].l;
sumi-=nr[i+k-2][k].d;
min1=min(sumi,min1);
sump=sumi;
for(j=2;j<=i;j++)
{
sump=sump+nr[i+k-1][j+k-1].d-nr[i-1][j-1].d;
sump=sump-nr[i+k-1][j-1].c+nr[i-1][j-1].c;
min1=min(sump,min1);
}
}
cout<<sum-min1;
return 0;
}