Cod sursa(job #3173859)

Utilizator VladNANegoita Vlad-Andrei VladNA Data 23 noiembrie 2023 20:13:49
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <bits/stdc++.h>
#pragma GCC optimize("Ofast,unroll-loops")
#pragma GCC target("sse,avx,fma,avx2,bmi,bmi2,lzcnt,popcnt")

using namespace std;

void solve() {
  int n, m;
  cin >> n >> m;

  vector<vector<int>> v(n, vector<int>(m));
  for (auto &vec : v)
    for (auto &x : vec)
      cin >> x;

  int best = 0;
  for (int mask = 0; mask < (1 << n); ++mask) {
    vector<int> sums(m, 0);
    for (int i = 0; i < n; ++i)
      for (int j = 0; j < m; ++j)
        if (mask & (1 << i))
          sums[j] -= v[i][j];
        else
          sums[j] += v[i][j];

    int total = 0;
    for (int j = 0; j < m; ++j)
      total += abs(sums[j]);

    best = max(best, total);
  }

  cout << best << endl;
}

int main() {
  freopen("flip.in", "r", stdin);
  freopen("flip.out", "w", stdout);
  int t = 1;
  // cin >> t;
  while (t--)
    solve();

  return 0;
}