Cod sursa(job #2829146)

Utilizator AndrewAndrooNecula Andrei AndrewAndroo Data 8 ianuarie 2022 12:47:40
Problema Jocul Flip Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.27 kb
#include <iostream>
#include <fstream>

using namespace std;

void x(int (&v)[20][20], int n, int m)
{
    int s;
    for (int i = 0; i < n; i++)
    {
        s = 0;
        for (int j = 0 ; j < m; j++)
            s += v[i][j];

        if (s < 0)
            for (int j = 0 ; j < m; j++)
            v[i][j] *= -1;
    }
}

void y(int (&v)[20][20], int n, int m)
{
    int s;
    for (int j = 0; j < m; j++)
    {
        s = 0;
        for (int i = 0 ; i < n; i++)
            s += v[i][j];

        if (s < 0)
            for (int i = 0 ; i < n; i++)
            v[i][j] *= -1;
    }
}

int main()
{
    ifstream in;
    in.open("flip.in");
    ofstream out;
    out.open("flip.out");

    int n, m;

    in >> n >> m;

    int a[20][20], b[20][20], c = 0, d = 0;

    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
        {
            in >> a[i][j];
            b[i][j] = a[i][j];
        }
    }

    x(a, n, m);
    y(a, n, m);

    y(b, n, m);
    x(b, n, m);

    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
        {
            c += a[i][j];
            d += b[i][j];
        }
    }

    if (c < d)
        out << d;
    else
        out << c;

    return 0;
}