Cod sursa(job #2596236)

Utilizator teos01Teodora Arsene teos01 Data 9 aprilie 2020 14:53:22
Problema Jocul Flip Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.53 kb
#include <iostream>
#include <fstream>

using namespace std;

void verif1(int a, int b, int c[16][16], int &k1, int &tot)
{
    int i, j, s;
    k1 = 0;
    tot = 0;
    for(i=1; i<=a; i++)
    {
        s = 0;
        for(j=1; j<=b; j++)
            s+=c[i][j];
        if(s < 0)
        {
            k1 = 1;
            for(j=1; j<=b; j++)
                c[i][j] = -c[i][j];
            tot+=-s;
        }
        else tot+=s;
    }
}

void verif2(int a, int b, int c[16][16], int &k2, int &tot)
{
    int i, j, s;
    k2 = 0;
    tot = 0;
    for(i=1; i<=b; i++)
    {
        s = 0;
        for(j=1; j<=a; j++)
            s+=c[j][i];
        if(s < 0)
            {
                k2 = 1;
                for(j=1; j<=a; j++)
                    c[j][i] = -c[j][i];
                tot+=-s;
            }
        else tot+=s;
    }
}



int main()
{
    ifstream fin("filip.in");
    ofstream fout("filip.out");

    int n, m, i, j, v[16][16], t1 = 0, t2 = 0, ok1 = 1, ok2 = 1;
    fin >> n >> m;
    for(i=1; i<=n; i++)
        for(j=1; j<=m; j++)
            fin >> v[i][j];

    verif1(n, m, v, ok1, t1);
    verif2(n, m, v, ok2, t2);
    while (ok1 != 0 || ok2 != 0)
        {
            verif1(n, m, v, ok1, t1);
            verif2(n, m, v, ok2, t2);
        }


    /*

    for(i=1; i<=n; i++)                             //afisare
    {
        for(j=1; j<=m; j++)
            fout << v[i][j] << ' ';
        fout << "\n";
    }

    */

    fout << t1;

    return 0;
}