Pagini recente » Cod sursa (job #1465296) | Cod sursa (job #1887705) | Cod sursa (job #2318812) | Cod sursa (job #1792742) | Cod sursa (job #374282)
Cod sursa(job #374282)
#include<stdio.h>
using namespace std;
#define dim 17
long i,n,m,j,s,mat[dim][dim],max,mat2[dim][dim];
int main()
{
FILE *f=fopen("flip.in","r"), *g=fopen("flip.out","w");
fscanf(f,"%ld %ld",&n,&m);
for(i=1;i<=n;i++)
{s=0;
for(j=1;j<=m;j++)
{
fscanf(f,"%ld",&mat[i][j]);
mat2[i][j]=mat[i][j];
s+=mat[i][j];
}
mat[i][0]=s;
}
//inversez pe linie
for(i=1;i<=n;i++)
if(mat[i][0]<0)
for(j=1;j<=m;j++)
mat[i][j]=-mat[i][j];
for(i=1;i<=m;i++)
{s=0;
for(j=1;j<=n;j++)
s+=mat[j][i];
mat[0][i]=s;
}
//inversez pe coloana
for(i=1;i<=m;i++)
if(mat[0][i]<0)
for(j=1;j<=n;j++)
mat[j][i]=-mat[j][i];
s=0;
//claculez suma
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
s+=mat[i][j];
if(max<s) max=s;
for(i=1;i<=m;i++)
{s=0;
for(j=1;j<=n;j++)
s+=mat2[j][i];
mat2[0][i]=s;
}
for(i=1;i<=m;i++)
if(mat2[0][i]<0)
for(j=1;j<=n;j++)
mat2[j][i]=-mat2[j][i];
s=0;
for(i=1;i<=n;i++)
{s=0;
for(j=1;j<=m;j++)
s+=mat2[i][j];
mat2[i][0]=s;
}
for(i=1;i<=n;i++)
if(mat2[i][0]<0)
for(j=1;j<=m;j++)
mat2[i][j]=-mat2[i][j];
s=0;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
s+=mat2[i][j];
if(max<s) max=s;
fprintf(g,"%ld\n",max);
return 0;}