Pagini recente » Cod sursa (job #2245299) | Cod sursa (job #2818601) | Cod sursa (job #1103454) | Cod sursa (job #867774) | Cod sursa (job #1914574)
#include <iostream>
#include <cstdio>
using namespace std;
int n,m,a[20][20];
void changel(int l)
{
for(int i=0;i<m;i++)
a[l][i]*=(-1);
}
void changec(int c)
{
for(int i=0;i<n;i++)
a[i][c]*=(-1);
}
void solve()
{
bool ok=1;
int l[20],c[20];
while(ok)
{
ok=0;
for(int i=0;i<n;i++)
l[i]=0;
for(int i=0;i<m;i++)
c[i]=0;
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
l[i]+=a[i][j];
c[j]+=a[i][j];
}
}
for(int i=0;i<n;i++)
if(l[i]<0)
{
ok=1;
changel(i);
}
for(int i=0;i<m;i++)
if(c[i]<0)
{
ok=1;
changec(i);
}
}
}
int main()
{
freopen("flip.in","r",stdin);
freopen("flip.out","w",stdout);
scanf("%d %d", &n, &m);
for(int i=0;i<n;i++)
{
scanf("\n%d", &a[i][0]);
for(int j=1;j<m;j++)
{
scanf(" %d", &a[i][j]);
}
}
solve();
int s=0;
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
s+=a[i][j];
}
}
cout<<s;
return 0;
}