Cod sursa(job #2533813)

Utilizator butnaru_vlad2003Butnaru Vlad butnaru_vlad2003 Data 29 ianuarie 2020 18:51:33
Problema Jocul Flip Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.49 kb
#include <fstream>
using namespace std;
ifstream in ("flip.in");
ofstream out ("flip.out");
int a[101][101];
int n,m;
void afis()
{
    for (int i = 1;i<=n;++i)
        out<<a[i][0]<<' ';
    out<<'\n';
    for (int j = 1;j<=m;++j)
        out<<a[0][j]<<' ';
    out<<'\n';
    return;
}
int main ()
{
    in>>n>>m;
    for (int i = 1;i<=n;++i)
        for (int j = 1;j<=m;++j)
            in>>a[i][j];
    for (int i = 1;i<=n;++i)
        for (int j = 1;j<=m;++j)
            a[i][0] += a[i][j], a[0][j]+=a[i][j];
    afis();
    for (int i = 1;i<=n;++i)
    {
        if (a[i][0]>=0)
            continue;
        int pl = -a[i][0];
        for (int j = 1;j<=m;++j)
            pl += -a[i][j];
        if (pl>0)
            for (int j = 1;j<=m;++j)
                a[i][j] = -a[i][j];
        for (int i = 1;i<=n;++i)
            for (int j = 1;j<=m;++j)
                a[i][0] += a[i][j], a[0][j]+=a[i][j];
    }
    afis();
    for (int j = 1;j <= m;++j)
    {
        if (a[0][j]>=0)
            continue;
        int pl= -a[0][j];
        for (int i = 1;i<=n;++i)
            pl+=a[i][j];
        if (pl>0)
            for (int i = 1; i<=n;++i)
                a[i][j] = -a[i][j];
        for (int i = 1;i<=n;++i)
            for (int j = 1;j<=m;++j)
                a[i][0] += a[i][j], a[0][j]+=a[i][j];
    }
    afis();
    int s = 0;
    for (int i = 1;i<=n;++i)
        for (int j = 1;j<=m;++j)
            s+=a[i][j];
    out<<s;
    return 0;
}