Pagini recente » Cod sursa (job #2955897) | Cod sursa (job #2141279) | Cod sursa (job #1569188) | Istoria paginii runda/concurs_000002 | Cod sursa (job #1900250)
#include <iostream>
#include <fstream>
#include <limits.h>
#include <algorithm>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n,m,x[18][18];
int suma,s,maxim=INT_MIN,lim;
int flip(){
suma=0;
for(int i=1;i<=n;++i){
s=0;
for(int j=1;j<=m;++j)
s+=-x[0][j]*x[i][j];
if(s>=0)
suma+=s;
else
suma+=-s;
}
return suma;}
int main()
{
fin>>n>>m;
for(int i=1;i<=n;++i)
for(int j=1;j<=m;++j)
fin>>x[i][j];
lim=1<<m;
for(int i=1;i<=lim;++i){
for(int j=1;j<=m;++j){
if(i&(1<<(j-1)))
x[0][j]=-1;
else
x[0][j]=1;}
maxim=max(maxim,flip());
}
fout<<maxim;
return 0;
}