Cod sursa(job #1152266)

Utilizator supernebunuRudiag Ionut supernebunu Data 24 martie 2014 17:05:14
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <fstream>
using namespace std;
int a[17][17],v[17],n,m,sol=-2147483647;
//i-am atribuit lui sol cea mai mica valoare posibila;
//n-linia
//m-coloana

void citire()
{
    //haci bagam o citire a matricii din fisier
    ifstream fin("flip.in");
    fin>>n>>m;
    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
            fin>>a[i][j];
    fin.close();
}

void rezolvare(int k)
{
    int i,j,s=0,l;
    for(i=1;i<=m;i++)
    {
        l=0;
        for(j=1;j<=n;j++)
            l+=a[j][i]*v[j];
        if(l<0)
            l=-l;
        s+=l;
    }
    if(s>sol)
        sol=s;

}

void inapoi(int k)
{
    for(int i=-1;i<=1;i+=2)
    {
        v[k]=i;
        if(k==n)
            rezolvare(k);
        else
            inapoi(k+1);
    }
}

int main()
{
    ofstream fout("flip.out");
    citire();
    inapoi(1);
    fout<<sol;
    fout.close();
    return 0;
}