Cod sursa(job #306935)

Utilizator Mircea_yoIonescu Mircea Alexandru Mircea_yo Data 22 aprilie 2009 14:19:28
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <fstream>   
  
using namespace std;   
  
int x[20];   
int m,n,a[20][20],i,j,mx;   
  
void calc()   
{   
    int sum=0,i,j,s1;   
    for (i=1;i<=m;i++) {   
        s1=0;   
        for (j=1;j<=n;j++)   
            if (x[j]>0)   
                s1=s1-a[i][j];   
            else  
                s1=s1+a[i][j];   
        if (s1>0)   
            sum=sum+s1;   
        else  
            sum=sum-s1;        
    }   
    if (sum>mx)   
        mx=sum;   
}   
  
void back(int k)   
{   
    int i;   
    for (i=0;i<2;i++)   
    {      
        x[k]=i;   
        if (k<n)   
            back(k+1);   
        else  
            calc();   
    }   
}   
       
  
int main()   
{   
    ifstream f("flip.in");   
    ofstream g("flip.out");   
  
    mx=0;      
    f>>m>>n;   
    for (i=1;i<=m;i++)   
        for (j=1;j<=n;j++) {   
            f>>a[i][j];   
            mx+=a[i][j];   
        }   
           
    back(1);       
  
    g<<mx;   
       
    f.close();   
    g.close();   
    return 0;   
}