Cod sursa(job #1447151)

Utilizator ciocan_catalinCiocan Catalin - Iulian ciocan_catalin Data 3 iunie 2015 19:18:03
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <fstream>
#include <iostream>


using namespace std;
int n,m,a[20][20],b[20][20],gen[25],smax;
void Citire()
{
    int i,j,x;
    ifstream fin("flip.in");
    fin>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            fin>>a[i][j];
    fin.close();
}

int Calculeaza()
{
    int i,j,s,suma;
    s = suma = 0;
    for(i=1;i<=m;i++)
    {
        s = 0;
        for(j=1;j<=n;j++)
            s+=b[j][i];
        if(s<0) suma-=s;
        else suma+=s;
    }
    return suma;
}

ofstream fout("flip.out");
int main()
{
    int i,j,s;
    Citire();
    while(gen[0]==0)
    {
        for(i=1;i<=n;i++)
        if(gen[i]==1)   for(j=1;j<=m;j++) b[i][j] = -a[i][j];
            else        for(j=1;j<=m;j++) b[i][j] = a[i][j];
        s = Calculeaza();
        smax = max(s,smax);
        for(i=n;gen[i]==1;i--) gen[i]=0;
        gen[i] = 1;
    }
    fout<<smax<<"\n";
    fout.close();
    return 0;
}