Cod sursa(job #1321461)

Utilizator alexhulutaHuluta Alexandru alexhuluta Data 19 ianuarie 2015 10:20:04
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <iostream>
#include<fstream>
#include <stdlib.h>
    int n,m,v[16][16],i,j,p,maxi,h[16][16],q;
    using namespace std;
    ifstream f("flip.in");
    ofstream g("flip.out");
int greedycoloana(int hony[16][16],int a,int b)
{
    int rez=0;
    for(int tig=1;tig<=a;tig++)
    {
        int s=0;
        for(int mig=1;mig<=b;mig++)
            s=hony[tig][mig]+s;
        if(s<0)
            s=s*-1;
            rez=rez+s;
    }
    return rez;
}
int main()
{
    f>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            f>>v[i][j];
    maxi=greedycoloana(v,n,m);
    p=1;
    for(i=1;i<=m;i++) p=p*2;
    for(i=p+1;i<=2*p;++i)
    {
        char nrb[1000000]={0};
        itoa(i,nrb,2);
        cout<<nrb<<' ';
        for(int y=1;y<=n;y++)
            for(j=1;j<=m;j++)
            h[y][j]=v[y][j];
        for(q=1;q<=m;q++)
            for(int r=1;r<=n;r++)
            if(nrb[q]=='1') h[r][q]=h[r][q]*-1;
        if(greedycoloana(h,n,m)>maxi) maxi=greedycoloana(h,n,m);
    }
    g<<maxi;
    f.close();
    g.close();
}