Pagini recente » Cod sursa (job #587523) | Cod sursa (job #317177) | Cod sursa (job #1710624) | Cod sursa (job #1221112) | Cod sursa (job #2659924)
#include <iostream>
#include <fstream>
using namespace std;
ifstream si("ferma2.in");
ofstream so("ferma2.out");
int sl[1005][1005], sc[1005][1005], sd[1005][1005];
int main() {
int n, k;
si>>n>>k;
k=n-k;
int sol=0;
for(int i=1; i<=n; i++) {
for(int j=1; j<=i; j++) {
int x;
si>>x;
sol+=x;
sl[i][j]=sl[i][j-1]+x;
sc[i][j]=sc[i-1][j]+x;
sd[i][j]=sd[i-1][j-1]+x;
}
}
int sum=0, minn, s;
for(int i=1; i<=k; i++)
sum+=sl[i][i];
minn=s=sum;
for(int i=2; i<=n-k+1; i++) {
s+=sl[i+k-1][k]-sd[i+k-2][k];
sum=s;
minn=min(minn, s);
for(int j=2; j<=i; j++) {
sum+=sd[i+k-1][j+k-1]-sd[i-1][j-1]-sc[i+k-1][j-1]+sc[i-1][j-1];
minn=min(minn, sum);
}
}
sol-=minn;
so<<sol<<'\n';
return 0;
}