Pagini recente » Cod sursa (job #414886) | Cod sursa (job #25017) | Cod sursa (job #2341135) | Cod sursa (job #3187692) | Cod sursa (job #492411)
Cod sursa(job #492411)
#include <fstream>
using namespace std;
void coloana(int **v, int i, int m)
{
int s_neg = 0;
int s_poz = 0;
for(int j = 0; j < m; j++)
if(v[j][i] >= 0)
s_poz += v[j][i];
else s_neg += v[j][i]*(-1);
if(s_neg > s_poz)
for(int j = 0; j < m; j++)
v[j][i] *= (-1);
}
void linii(int **v,int j, int n)
{
int s_neg = 0;
int s_poz = 0;
for(int i = 0; i < n; i++)
if(v[j][i] >= 0)
s_poz += v[j][i];
else s_neg += v[j][i]*(-1);
if(s_neg > s_poz)
for(int i = 0; i < n; i++)
v[j][i] *= (-1);
}
int main()
{
ifstream fin("flip.in");
ofstream fout("flip.out");
int n, m, max = 0;;
fin>>n>>m;
int **v;
v = new int*[n];
for (int i=0;i<n;i++)
v[i] = new int[m];
for(int i = 0; i < n; i++)
for(int j = 0; j < m; j++)
fin>>v[i][j];
for(int i = 0; i < n; i++)
coloana(v, i, n);
for(int j = 0; j < m; j++)
linii(v, j, m);
for(int i = 0; i < n; i++)
for(int j = 0; j < m; j++)
max += v[i][j];
fout<<max;
fin.close();
fout.close();
return 0;
}