Pagini recente » Cod sursa (job #631941) | Cod sursa (job #3350822) | Borderou de evaluare (job #1169190) | Monitorul de evaluare | Cod sursa (job #1990219)
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
long long iv[20], sv[20], maxim, Sum;
int n, m, i, j;
int a[20][20];
void verif(int K) {
int i;
Sum = 0;
for (i = 1; i <= m; i++)
sv[i] = 0;
for (i = 0; i < n; i++)
if (((1<<i)&K)!=0)
for (j = 1; j <= m; j++)
sv[j] += a[i][j];
for (i = 1; i <= m; i++)
Sum += max(iv[i]-2*sv[i], 2*sv[i]-iv[i]);
if (Sum > maxim)
maxim = Sum;
}
int main() {
maxim = -6e15;
f >> n >> m;
for (i = 1; i <= n; i++)
for (j = 1; j <= m; j++)
f >> a[i][j], iv[j
] += a[i][j];
for (i = 0; i < (1<<n); i++)
verif(i);
g << maxim;
}