Cod sursa(job #639226)
Utilizator | Data | 22 noiembrie 2011 20:16:20 | |
---|---|---|---|
Problema | Ferma2 | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.52 kb |
#include<fstream>
using namespace std;
int i,j,t,n,m,diag[1001][1001],x,k;
int rez=0,min1=1000000000,sum,r;
int main()
{
ifstream f("ferma2.in");
FILE *g=fopen("ferma2.out","w");
f>>n>>k;
for(i=1;i<=n;i++)
{
diag[i-1][0]=0;
for(j=1;j<=i;j++)
{
f>>x;
diag[i][j]+=diag[i-1][j-1]+x;
sum+=x;
}
}
m=n-k;
for(i=n;i>=m;i--)
{
for(j=i;j>=m;j--)
{
rez=0;
r=m;
for(t=j;t>j-m;t--)
rez+=(diag[i][t]-diag[i-r][t-r]),r--;
if(min1>rez)
min1=rez;
}
}
fprintf(g,"%d ",sum-min1);
return 0;
}