Pagini recente » Cod sursa (job #396899) | Cod sursa (job #2589050) | Cod sursa (job #1648600) | Cod sursa (job #1389142) | Cod sursa (job #2148691)
#include <iostream>
#include <fstream>
using namespace std;
int n,m,a[100][100];
ifstream in("flip.in");
void citire()
{
in>>n>>m;
int i,j;
for(i=0;i<n;i++)
for(j=0;j<m;j++)
in>>a[i][j];
}
//suma pe orizontala pentru i
int sumalin(int k)
{
int sum=0;
for(int i=0;i<m;i++)
sum=sum+a[k][i];
return sum ;
}
void schimblin(int k)
{
for(int i=0;i<m;i++)
a[k][i]*=-1;
}
//schimba pe orizontala pentru i
//suma pe verticala pentru j
int sumacol(int k)
{
int sum=0;
for(int i=0;i<n;i++)
sum=sum+a[i][k];
return sum ;
}
void schimbcol(int k)
{
for(int i=0;i<n;i++)
a[i][k]*=-1;
}
//schimba coloana pentru j
int f()
{
int i,j,sum=0;
for(i=0;i<n;i++)
if(sumacol(i)<0)schimbcol(i);
for(j=0;j<m;j++)
if(sumalin(j)<0)schimblin(j);
for(i=0;i<n;i++)
for(j=0;j<m;j++)
sum=sum+a[i][j];
return sum;
}
int main()
{
ofstream out ("flip.out");
citire();
out <<f();
return 0;
}