Cod sursa(job #3350287)

Utilizator hyper27Antonio Nicolae hyper27 Data 6 aprilie 2026 22:23:36
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <fstream>
#include <algorithm>
#include <climits>

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

    long long maxSum = LLONG_MIN;

    for (int subset = 0; subset < (1 << n); subset++) {
        long long b[16][16];

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < m; j++) {
                b[i][j] = (subset >> i & 1) ? -a[i][j] : a[i][j];
            }
        }

        long long total = 0;
        for (int j = 0; j < m; j++) {
            long long colSum = 0;
            for (int i = 0; i < n; i++) {
                colSum += b[i][j];
            }
            total += std::max(colSum, -colSum);
        }
        maxSum = std::max(maxSum, total);
    
    }

    fout << maxSum;

    return 0;
}