Cod sursa(job #971956)

Utilizator abel1090Abel Putovits abel1090 Data 10 iulie 2013 16:51:00
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream f("flip.in");
ofstream g("flip.out");

short n,m;
long x[17][17];
long maxi=0;

long osz_sum(){
     long osszeg=0;
     for(short i=1;i<=m;i++){
        long sorosszeg=0;
        for(short j=1;j<=n;j++) sorosszeg+=x[j][i];
        if(sorosszeg<0) osszeg+=sorosszeg*(-1);
        else osszeg+=sorosszeg;
     }
     return osszeg;
 }

void reksor(short k)
 {
     if(k>n)
        {
            long t=osz_sum();
            if(t>maxi) maxi=t;
        }
        else
            for(short l=-1;l<=1;l++)
                if(l!=0)
                  {
                      for(short j=1;j<=m;j++)
                         x[k][j]*=l;

                      reksor(k+1);

                      for(short j=1;j<=m;j++)
                         x[k][j]*=l;
                  }
 }

int main()
 {
     f>>n>>m;
     for(short i=1;i<=n;i++)
        for(short j=1;j<=m;j++)
                f>>x[i][j];

     reksor(1);

     cout<<maxi;
     g<<maxi;
     return 0;
 }