Cod sursa(job #1722944)

Utilizator crisanraoulCrisan Raoul crisanraoul Data 29 iunie 2016 13:40:54
Problema Jocul Flip Scor 20
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2014, Anul II Marime 1.26 kb
#include <iostream>
#include <fstream>

using namespace std;
/*
void changeLine(int i, int rows, int cols, int *a[rows][])
{
    for (int j = 0; j < cols; j++)
        cout<<a[i][j]<<" ";
}*/

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

    int N, M, maxSum = 0;
    f>>N;
    f>>M;
    int a[N][M];

    for (int i = 0; i < N; i++)
        for (int j = 0; j < M; j++)
            f>>a[i][j];

    for (int i = 0; i < N; i++)
    {
        int s = 0, comutedSum = 0;
        for (int j = 0; j < M; j++)
        {
            s += a[i][j];
            comutedSum += a[i][j] * (-1);
        }
        if (s < comutedSum)
        {
            //changeLine(i, N, M, a);
            for (int j = 0; j < M; j++)
                a[i][j] *= -1;
        }
    }

    for (int j = 0; j < M; j++)
    {
        int s = 0, comutedSum = 0;
        for (int i = 0; i < N; i++)
        {
            s += a[i][j];
            comutedSum += a[i][j] * (-1);
        }
        if (s < comutedSum)
        {
            for (int i = 0; i < N; i++)
                a[i][j] *= -1;
        }
    }

    for (int i = 0; i < N; i++)
        for (int j = 0; j < M; j++)
            maxSum += a[i][j];
    g<<maxSum;
    return 0;
}