Cod sursa(job #2241896)

Utilizator ihorvaldsTudor Croitoru ihorvalds Data 17 septembrie 2018 12:24:14
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <fstream>

using namespace std;

ifstream fin("flip.in");
ofstream fout("flip.out");
int n, m, a[100][100];

void flipRow(int row) {
  for(int i = 0; i < m; i++)
    a[row][i] *= -1;
}

void flipCol(int col) {
  for(int i = 0; i < n; i++)
    a[i][col] *= -1;
}

void check() {

  int colSum = 0;
  int rowSum = 0;

  for (int i = 0; i < m; i++) {
    for (int j = 0; j < n; j++) {
      colSum += a[j][i];
    }
    if (colSum < colSum * -1)
      flipCol(i);
    colSum = 0;
  }

  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
      rowSum += a[i][j];
    }
    if (rowSum < rowSum * -1)
      flipRow(i);
    rowSum = 0;
  }

}

int total() {
  int total;
  for(int i = 0; i < n; i++)
    for(int j = 0; j < m; j++)
      total += a[i][j];

  return total;
}

int main() {
  fin >> n >> m;
  for(int i = 0; i < n; i++)
    for(int j = 0; j < m; j++)
      fin >> a[i][j];
  check();

  fout << total();
  return 0;
}