Cod sursa(job #3252744)

Utilizator Cristian_NegoitaCristian Negoita Cristian_Negoita Data 30 octombrie 2024 20:36:17
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");

int a[20][20];
int32_t main()
{
    int n, m;
    fin >> n >> m;
    for(int i = 0; i < n; i++)
        for(int j = 0; j < m; j++)
            fin >> a[i][j];

    int sum_max = INT_MIN;
    for(int d = 0; d < (1 << n); d++)
    {
        bitset<16> flipped(d);
        int sum = 0;
        for(int j = 0; j < m; j++)
        {
            int sum_col = 0;
            for(int i = 0; i < n; i++)
            {
                if(flipped[i] == true)
                    sum_col -= a[i][j];
                else
                    sum_col += a[i][j];
            }
            sum_col = max(sum_col, -sum_col);
            sum += sum_col;
        }
        sum_max = max(sum_max, sum);
    }
    fout << sum_max << "\n";

    fin.close();
    fout.close();
    return 0;
}