Cod sursa(job #2258575)

Utilizator raulsomesanRaul Somesan raulsomesan Data 11 octombrie 2018 17:57:53
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <fstream>
using namespace std;
int n, m, i, j, a[20][20], fr[20], suma[20], s, maxim=-2000000000, Sum;

int main () {
    ifstream fin ("flip.in");
    ofstream fout ("flip.out");
    fin>>n>>m;
    for (i=1;i<=n;i++) {
        for (j=1;j<=m;j++)
            fin>>a[i][j];
    }


    for (i=1;i<=(1<<m)-1;i++) {
        for (j=1;j<=m;j++)
            fr[j]=0;
        for (j=0;j<=15;j++) {
            if (((i>>j)&1)==1) {
                fr[j+1]=1;
            }
        }
        Sum=0;
        for (j=1;j<=n;j++) {
            s=0;
            for (int k=1;k<=m;k++) {
                if (fr[k]==1)
                    s+=a[j][k];
                else
                    s-=a[j][k];
            }
            if (s<0)
                Sum-=s;
            else
                Sum+=s;
        }
        if (Sum>maxim)
            maxim=Sum;
    }
    fout<<maxim;

    return 0;
}