Cod sursa(job #2033712)

Utilizator RoliBoyNagy Roland RoliBoy Data 7 octombrie 2017 10:09:07
Problema Jocul Flip Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.54 kb
#include <fstream>
#include <iostream>

int main() {
    std::fstream in("flip.in", std::ios::in);
    std::fstream out("flip.out", std::ios::out);
    int n, m;
    in >> n >> m;
    int v[n][m];
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            in >> v[i][j];
        }
    }

    for (bool ms = true; ms;) {
        ms = false;
        for (bool k = true; k;) {
            for (int i = 0; i < n; i++) {
                k = false;
                int sum = 0;
                for (int j = 0; j < m; j++) {
                    sum+=v[i][j];
                }
                if (sum < 0) {
                    ms = true;
                    k = true;
                    for (int j = 0; j < m; j++) {
                        v[i][j]*=-1;;
                    }
                }
            }
        }
        for (bool k = true; k;) {
            for (int j = 0; j < m; j++) {
                k = false;
                int sum = 0;
                for (int i = 0; i < n; i++) {
                    sum+=v[i][j];
                }
                if (sum < 0) {
                    ms = true;
                    k = true;
                    for (int i = 0; i < n; i++) {
                        v[i][j]*=-1;;
                    }
                }
            }
        }
    }

    int sum = 0;
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            sum += v[i][j];
        }
    }
    out << sum;
    in.close();
    out.close();
    return 0;
}