Pagini recente » Istoria paginii runda/tractoare2 | Cod sursa (job #2032098) | Cod sursa (job #786618) | Cod sursa (job #1454098) | Cod sursa (job #1620912)
#include <iostream>
#include <fstream>
using namespace std;
fstream in("flip.in");
ofstream out("flip.out");
int main()
{
int line,col,suma=0; in>>line>>col;
long long int tabel[line][col];
for(int i=1;i<=line;i++)
for(int j=1;j<=col;j++)
in>>tabel[i][j];
for(int i=1;i<=col;i++)
{
int sc=0;
for(int j=1;j<=line;j++)
{
sc+=tabel[j][i];
}
if(sc<(sc*-1))
{
sc=sc*-1;
for(int j=1;j<=line;j++)
tabel[j][i]=tabel[j][i]*-1;
}
//Pentru linii
for(int c=1;c<=line;c++)
{
int sl=0;
for(int k=1;k<=col;k++)
{
sl+=tabel[c][k];
}
if(sl<(sl*-1))
{
sl=sl*-1;
//Switch pentru linie
for(int k=1;k<=col;k++)
tabel[c][k]=tabel[c][k]*-1;
//Suma coloana si linie
for(int j=1;j<=line;j++)
{
sl+=tabel[j][i];
}
//Verificare si comutare default
if(sl<sc)
{
for(int k=1;k<=col;k++)
tabel[c][k]=tabel[c][k]*-1;
}
}
}
}
for(int i=1;i<=line;i++)
{
for(int j=1;j<=col;j++)
{
suma+=tabel[i][j];
}
}
out<<suma;
}