Cod sursa(job #2503837)

Utilizator As932Stanciu Andreea As932 Data 3 decembrie 2019 20:27:01
Problema Jocul Flip Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int main()
{
    int n,m,sum=0,su,is,js,ij,jj;
    fin>>n>>m;
    int x[n+1][m+1],s[n+2][m+2];

    for(int i=0;i<=n;i++)
        s[i][0]=0;
    for(int j=0;j<=m;j++)
        s[0][j]=0;

    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
            {fin>>x[i][j];
            s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+x[i][j];}

    for(int j=1;j<=m;j++)
    {
        is=1,js=j,ij=n,jj=j;
        su=s[ij][jj]-s[is-1][jj]-s[ij][js-1]+s[is-1][js-1];
        if(su<0)for(int i=1;i<=n;i++)x[i][j]*=-1;
    }

    for(int i=1;i<=n;i++)
    {
        is=i,js=1,ij=i,jj=m;
        su=s[ij][jj]-s[is-1][jj]-s[ij][js-1]+s[is-1][js-1];
        if(su<0)for(int j=1;j<=m;j++)x[i][j]*=-1;
    }

    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
        sum+=x[i][j];

    fout<<sum;
    return 0;
}