Cod sursa(job #1240511)

Utilizator Radu_GalanGalan Radu Radu_Galan Data 11 octombrie 2014 15:06:49
Problema Jocul Flip Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int a[17][17],ok1=1,ok2=1,s1,s2,s,m,n,i,j;
int main()
{
    in>>m>>n;
    for(i=1;i<=m;i++)
        for(j=1;j<=n;j++)in>>a[i][j];
    while(ok1 && ok2)
    {
        for(i=1;i<=m;i++)
        {
            s1=0;
            s2=0;
            for(j=1;j<=n;j++)
            if(a[i][j]>=0)s1+=a[i][j];
                else s2=s2-a[i][j];
            if(s2>s1)for(j=1;j<=n;j++)a[i][j]=-a[i][j],ok1=1;
                else ok1=0;
        }
        for(i=1;i<=n;i++)
        {
            s1=0;
            s2=0;
            for(j=1;j<=m;j++)
            if(a[j][i]>=0)s1+=a[j][i];
                else s2=s2-a[j][i];
            if(s2>s1)for(j=1;j<=n;j++)a[j][i]=-a[j][i],ok2=1;
                else ok2=0;
        }

    }
    for(i=1;i<=m;i++)
        for(j=1;j<=n;j++)s+=a[i][j];
    out<<s;
    in.close();
    return 0;
}