Cod sursa(job #2287542)

Utilizator alcholistuStafie Ciprian Mihai alcholistu Data 22 noiembrie 2018 00:13:45
Problema Jocul Flip Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.19 kb
#include <iostream>
#include <fstream>
using namespace std;

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

int n, m, matrix[16][16];

void functcol(int i)
{
    int j, Scol=0, Scol2 =0;
    for (j=0;j<n;j++)
    {
        Scol += matrix[j][i];
        Scol2 += -matrix[j][i];
    }
    if (Scol2 > Scol)
        for (j=0;j<n;j++)
            matrix[j][i] = -matrix[j][i];
}


int functrand(int i)
{
    int j, Srand = 0, Srand2 = 0;
    for (j=0;j<m;j++)
    {
        Srand += matrix[i][j];
        Srand2 += -matrix[i][j];
    }
    if (Srand2 > Srand)
    {
        for (j=0;j<m;j++)
            matrix[i][j] = -matrix[i][j];
        return Srand2;
    }
    return Srand;
}

int main()
{
    f >> n >> m;
    int i, j;
    long long Stotal, Scopie = 0;
    for (i=0; i<n; i++)
        for(j=0; j<m; j++)
        {
            f >> matrix[i][j];
            Scopie += matrix[i][j];
        }
    do{
        Stotal = Scopie;
        Scopie = 0;
        for (i=0; i<n; i++)
        {
            for (j=0; j<m; j++)
                functcol(j);
            Scopie += functrand(i);
        }
    }while(Stotal != Scopie);
    g << Stotal;
    return 0;
}