Cod sursa(job #2776541)

Utilizator puica2018Puica Andrei puica2018 Data 20 septembrie 2021 09:30:02
Problema Jocul Flip Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("flip.in");
ofstream fout("flip.out");

int n,m;
int a[20][20],slin[20],scol[20];

int main()
{
    fin>>n>>m;
    int i,j;
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
            fin>>a[i][j];
    for(j=0; j<m; j++)
        for(i=0; i<n; i++)
            scol[j]+=a[i][j];
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
            slin[i]+=a[i][j];
    int maxim=-(int)1e9;
    for(int mask=0; mask<(1<<n); mask++)
    {
        int sum=0;
        for(int i=0; i<n; i++)
        {
            if(mask&(1<<i))
                sum-=slin[i];
            else
                sum+=slin[i];
        }
        for(int j=0; j<m; j++)
        {
            if(sum<sum-scol[j]+-1*scol[j])
            {
                sum-=scol[j];
                sum+=-1*scol[j];
            }
        }
        maxim=max(maxim,sum);
    }
    fout<<maxim<<"\n";
    return 0;
}