Cod sursa(job #709726)

Utilizator andreysGigi V andreys Data 8 martie 2012 15:42:07
Problema Jocul Flip Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 2.29 kb
#include<fstream>
using namespace std;
int main()
{
    ifstream fin("flip.in");
    ofstream fout("flip.out");
    int n,m,s,i,j;
    fin>>n>>m;
    int a[17][17];
    for(i=1;i<=n;i++){
                      for(j=1;j<=m;j++){fin>>a[i][j];}
                      }
    int m1,m2;
    m1=100000;
    for(i=1;i<=n;i++){
                      s=0;
                      for(j=1;j<=m;j++){
                                        if(a[i][j]<0){s+=a[i][j];}
                                        }
                      if(s<m1){m1=s;}
                      }
    m2=100000;
    for(j=1;j<=m;j++){
                      s=0;
                      for(i=1;i<=n;i++){
                                        if(a[i][j]<0){s+=a[i][j];}
                                        }
                      if(s<m2){m2=s;}
                      }
    if(m1>m2){
              for(j=1;j<=m;j++){
                                s=0;
                                for(i=1;i<=n;i++){s+=a[i][j];}
                                if(s<0){
                                        for(i=1;i<=n;i++){a[i][j]*=-1;}
                                        }
                                }
              for(i=1;i<=n;i++){
                                s=0;
                                for(j=1;j<=m;j++){s+=a[i][j];}
                                if(s<0){
                                        for(j=1;j<=m;j++){a[i][j]*=-1;}
                                        }
                                }
              }
    else{
         for(i=1;i<=n;i++){
                           s=0;
                           for(j=1;j<=m;j++){s+=a[i][j];}
                           if(s<0){
                                   for(j=1;j<=m;j++){a[i][j]*=-1;}
                                   }
                           }
         for(j=1;j<=m;j++){
                           s=0;
                           for(i=1;i<=n;i++){s+=a[i][j];}
                           if(s<0){
                                   for(i=1;i<=n;i++){a[i][j]*=-1;}
                                   }
                           }
         }
    s=0;
    for(i=1;i<=n;i++){
                      for(j=1;j<=m;j++){s+=a[i][j];}
                      }
    fout<<s;
    fin.close();
    fout.close();
    return 0;
}