Pagini recente » Cod sursa (job #2985494) | Cod sursa (job #911703) | Cod sursa (job #3346898) | Cod sursa (job #85815) | Cod sursa (job #2930106)
#include <bits/stdc++.h>
int max_sum(int matrix[16][16], int m, int n) {
for (int i = 0; i < m; i++) { // switching by rows
int sum_row = 0;
for (int j = 0; j < n; j++) sum_row += matrix[i][j];
if (sum_row > 0) continue;
for (int j = 0; j < n; j++) matrix[i][j] *= -1;
}
for (int j = 0; j < n; j++) { // switching by columns
int sum_col = 0;
for (int i = 0; i < m; i++) sum_col += matrix[i][j];
if (sum_col > 0) continue;
for (int i = 0; i < m; i++) matrix[i][j] *= -1;
}
int sum = 0;
for (int i = 0; i < m; i++)
for (int j = 0; j < n; j++)
sum += matrix[i][j];
return sum;
}
int main() {
std::ifstream f("flip.in");
std::ofstream g("flip.out");
int m, n;
f >> m >> n;
int matrix[16][16];
for (int i = 0; i < m; i++)
for (int j = 0; j < n; j++)
f >> matrix[i][j];
f.close();
g << max_sum(matrix, m, n);
g.close();
return 0;
}