Cod sursa(job #2148867)

Utilizator KernelovicNegrean Victor Kernelovic Data 2 martie 2018 08:48:27
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.36 kb
#include <iostream>
#include <cstdio>

using namespace std;

int matr[17][17], n, m;

int coloana(int m)
{
    int poz = 0, neg = 0;
    for(int i = 0; i < n; i++)
    {
        if(matr[i][m] >= 0) poz += matr[i][m];
        else neg += matr[i][m] * (-1);
    }

    if(neg > poz)
    {
        cout << "coloana: " << m + 1 << endl;
        for(int i = 0; i < n; i++)
        {
            matr[i][m] *= -1;
        }
    }
}

int linie(int n)
{
    int poz = 0, neg = 0;
    for(int i = 0; i < m; i++)
    {
        if(matr[n][i] >= 0) poz += matr[n][i];
        else neg += matr[n][i] * (-1);
    }

    if(neg > poz)
    {
        cout << "linie: " << n + 1 << endl;
        for(int i = 0; i < m; i++)
        {
            matr[n][i] *= -1;
        }
    }
}

int main()
{
    freopen("flip.in", "r", stdin);
    freopen("flip.out", "w", stdout);

    cin >> n >> m;
    int s = 0;

    for(int i = 0; i < n; i++)
    {
        for(int j = 0; j < m; j++)
        {
            cin >> matr[i][j];
        }
    }

    for(int i = 0; i < m; i++)
    {
        coloana(i);
    }

    for(int i = 0; i < n; i++)
    {
        linie(i);
    }

    for(int i = 0; i < n; i++)
    {
        for(int j = 0; j < m; j++)
        {
            s += matr[i][j];
        }
        cout << endl;
    }

    cout << s;
}