Pagini recente » Cod sursa (job #1520473) | Cod sursa (job #1712745) | Cod sursa (job #17189) | Cod sursa (job #664306) | Cod sursa (job #3140614)
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int ** citire(int, int);
void config(int **, int, int);
int suma(int **, int, int);
int main() {
int n, m;
fin >> n >> m;
int ** v = citire(n, m);
config(v, n, m);
fout << suma(v, n, m);
}
int ** citire(int n, int m) {
int ** v = new int * [n];
for (int i = 0; i < n; ++i) {
v[i] = new int[m];
for (int j = 0; j < m; ++j)
fin >> v[i][j];
}
return v;
}
void config(int ** v, int n, int m) {
for (int i = 0; i < n; ++i) {
int s1 = 0, s2 = 0;
for (int j = 0; j < m; ++j) {
s1 += v[i][j];
s2 += ((-1)*v[i][j]);
}
if (s2 > s1)
for (int j = 0; j < m; ++j)
v[i][j] *= (-1);
}
for (int j = 0; j < m; ++j) {
int s1 = 0, s2 = 0;
for (int i = 0; i < n; ++i) {
s1 += v[i][j];
s2 += ((-1)*v[i][j]);
}
if (s2 > s1)
for (int i = 0; i < n; ++i)
v[i][j] *= (-1);
}
}
int suma(int ** v, int n, int m) {
int s = 0;
for (int i = 0; i < n; ++i)
for (int j = 0; j < m; ++j)
s += v[i][j];
return s;
}