Cod sursa(job #3301678)

Utilizator ScratchQScratchQ ScratchQ Data 29 iunie 2025 01:53:32
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <cstdio>
int main() {
    freopen ("flip.in", "r", stdin), freopen ("flip.out", "w", stdout);
    int n, m, a[16][16], s[16];
    for (int i = 0; i < 16; i++) {
        s[i] = 0;
        for (int j = 0; j < 16; j++) {
            a[i][j] = 0;
        }
    }
    scanf("%d %d", &n, &m);
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            scanf("%d", &a[i][j]);
            s[i] += a[i][j];
            a[i][j] *= 2;
        }
    }
    int best = -(int) 1e9;
    for (int mask = 0; mask < (1 << m); mask++) {
        int cur = 0;
        for (int i = 0; i < n; i++) {
            int sum = -s[i];
            for (int j = 0; j < m; j++) {
                sum += a[i][j] * (!!(mask & (1 << j)));
            }
            cur += (sum > 0) ? sum : -sum;
        }
        best = (cur > best) ? cur : best;
    }
    printf("%d\n", best);
}