Cod sursa(job #2286834)

Utilizator alcholistuStafie Ciprian Mihai alcholistu Data 20 noiembrie 2018 21:21:25
Problema Jocul Flip Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.14 kb
#include <iostream>
#include <fstream>
using namespace std;

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

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

int 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];
        return Scol2;
    }
    return Scol;
}


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, Scopie, Stotal;
    for (i=0; i<n; i++)
        for(j=0; j<m; j++)
            f >> matrix[i][j];
    do{
        Scopie = 0;
        Stotal = 0;
        for(i=0;i<n;i++)
            Scopie += functrand(i);
        for(j=0;j<m;j++)
            Stotal += functcol(j);
    }
    while(Stotal != Scopie);
    g << Stotal;
    return 0;
}