Cod sursa(job #912217)

Utilizator AnduuFMI Alexandru Banu Anduu Data 12 martie 2013 10:27:15
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.05 kb
#include <fstream>
using namespace std;
int a[17][17],maxx;
short v[17],n,m,i,j;
void citire()
{
    ifstream in("flip.in");
    in>>n>>m;
    for (int i=1;i<=n;i++)
    for (int j=1;j<=m;j++)
    in>>a[i][j];
    in.close();
    for (i=1;i<=m;i++)
    v[i]=-3;
}
void afis()
{
    ofstream out("flip.out");
    out<<maxx;
    out.close();
}
void back()
{
    int i,j,k,sum,s;
    k=1;
    maxx=-1000001;
    while (k>0)
    {
        if (k==m+1)
        {
            sum=0;
            for (i=1;i<=n;i++)
            {
                s=0;
                for (j=1;j<=m;j++)
                s+=a[i][j]*v[j];
                if (s<0)
                s*=-1;
                sum+=s;
            }
            if (sum>maxx)
            maxx=sum;
            k--;
        }
        else
        if (v[k]<1)
        {
            v[k]+=2;
            k++;
        }
        else
        {
            v[k]=-3;
            k--;
        }
    }
}
int main()
{
    citire();
    back();
    afis();
    return 0;
}