Cod sursa(job #2803027)

Utilizator HadefAlexandru Haidet Hadef Data 19 noiembrie 2021 12:15:24
Problema Jocul Flip Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.11 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");

int n,m ,A[20][20];

void transforma_linie(int poz)
{
    int i;
    for(i=1;i<=m;i++)
        A[poz][i]=A[poz][i]*(-1);
    A[poz][m+1]=A[poz][m+1]*(-1);
}

void transforma_coloana(int poz)
{
    int i;
    for(i=1;i<=n;i++)
        A[i][poz]=A[i][poz]*(-1);
    A[n+1][poz]=A[n+1][poz]*(-1);
}

int main()
{
    int i,j;
    fin>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            fin>>A[i][j];
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            A[i][m+1]=A[i][m+1]+A[i][j];
    i=1;j=1;
    while(j<=m)
    {
        i=1;
        while(i<=n)
        {
            A[n+1][j]=A[n+1][j]+A[i][j];
            i++;
        }
        j++;
    }

    for(i=1;i<=n;i++)
        if(A[i][m+1]<0)
            transforma_linie(i);
    for(j=1;j<=m;j++)
        if(A[n+1][j]<0)
            transforma_coloana(j);

    int S=0;
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=m;j++)
            S=S+A[i][j];
    }
    fout<<S;

    return 0;
}