Pagini recente » Cod sursa (job #1300028) | Cod sursa (job #1143152) | Cod sursa (job #2683051) | Cod sursa (job #3284405) | Cod sursa (job #369705)
Cod sursa(job #369705)
#include<fstream>
using namespace std;
int main()
{
int a[17][17];
int i,j,n,m;
ifstream fin("flip.in");
fin>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
fin>>a[i][j];
fin.close();
int s=0,s1=0;
for(j=1;j<=m;j++)
{
for(i=1;i<=n;i++)
if(a[i][j]<0)s+=a[i][j];
else s1+=a[i][j];
s*=-1;
if(s>s1)
for(i=1;i<=n;i++)
a[i][j]*=-1;
s=0;s1=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
if(a[i][j]<0)s+=a[i][j];
else s1+=a[i][j];
s*=-1;
if(s>s1)
for(j=1;j<=m;j++)
a[i][j]*=-1;
s=0;s1=0;
}
int suma=0;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
suma+=a[i][j];
//parcurg invers
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
if(a[i][j]<0)s+=a[i][j];
else s1+=a[i][j];
s*=-1;
if(s>s1)
for(j=1;j<=m;j++)
a[i][j]*=-1;
s=0;s1=0;
}
s=0,s1=0;
for(j=1;j<=m;j++)
{
for(i=1;i<=n;i++)
if(a[i][j]<0)s+=a[i][j];
else s1+=a[i][j];
s*=-1;
if(s>s1)
for(i=1;i<=n;i++)
a[i][j]*=-1;
s=0;s1=0;
}
int suma1=0;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
suma1+=a[i][j];
FILE *fout=fopen("flip.out","w");
if(suma1>suma2)
fprintf(fout,"%d",suma1);
else fprintf(fout,"%d",suma2);
return 0;
}