Cod sursa(job #2973219)

Utilizator RolandPetreanPetrean Roland RolandPetrean Data 31 ianuarie 2023 14:27:56
Problema Jocul Flip Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
// https://infoarena.ro/problema/flip
#include <bits/stdc++.h>
using namespace std;

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

int main() {
  int n, m;
  fin>>n>>m;

  vector<vector<int>> t(n, vector<int>(m));
  for (int i=0; i<n; ++i) {
    for (int j=0; j<m; ++j) fin>>t[i][j];
  }

  int maxi=INT_MIN;
  for (int i=0; i<(1<<n); ++i) {
    vector<int> s(m+1);
    for (int j=0; j<n; ++j) {
      int p=((i&(1<<j)) ? -1 : 1);
      for (int k=0; k<m; ++k) s[k] += t[j][k]*p;
    }

    int curr=0;
    for (int j=0; j<m; ++j) curr += max(s[j], -s[j]);

    maxi = max(maxi, curr);
  }

  fout<<maxi;
}