Pagini recente » Cod sursa (job #3266536) | Cod sursa (job #2794470) | Cod sursa (job #1359647) | Cod sursa (job #3142792) | Cod sursa (job #2516341)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int f[2000], N, M, a[100][100], i, maxim;
void flip()
{
int si, sf=0;
for(int i=1;i<=N;i++)
{
si=0;
for(int j=1;j<=M;j++) si += f[j]*a[i][j];
if(si<0) sf -= si;
else sf += si;
}
if(sf>maxim) maxim=sf;
}
void bkt(int k)
{
if(k>M) flip();
else
{
i=1;
f[k]=i;
bkt(k+1);
i=-1;
f[k]=i;
bkt(k+1);
}
}
int main()
{
in>>N>>M;
for(int i=1;i<=N;i++)
for(int j=1;j<=M;j++) in>>a[i][j];
bkt(1);
out<<maxim;
return 0;
}