Cod sursa(job #2639783)

Utilizator AnnieMyaAnamaria Ordace AnnieMya Data 3 august 2020 20:50:50
Problema Jocul Flip Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.12 kb
/******************************************************************************

                              Online C++ Compiler.
               Code, Compile, Run and Debug C++ program online.
Write your code in this editor and press "Run" button to compile and execute it.

*******************************************************************************/

#include <iostream>
#include <fstream>
using namespace std;

int n,m,sol[32],i,j,dim;
long a[16][16],maxim=-2147483648,s,s1;

long sum();

void back(int k)
{
    if(k>=dim)
    {
        s1=sum();
        if(maxim <s1)
            maxim=s1;
    }
    else
    {
        back(k+1);
        sol[k]=1;
        back(k+1);
        sol[k]=0;
    }
}

long sum ()
{
    s=0;
    for(i=0;i<n;i++)
        for(j=0;j<m;j++)
            if(sol[i]==sol[n+j])
             s+=a[i][j];
            else
                s-=a[i][j];
    return s;
}


int main()
{
    ifstream in("flip.in");
    in >>n >>m;
    for(i=0;i<n;i++)
        for(j=0;j<m;j++)
            in >>a[i][j];
    in.close();
    dim=n+m;
    back(0);
    ofstream out("flip.out");
    out <<maxim;
    out.close();
    return 0;
}