Pagini recente » Cod sursa (job #2400023) | Cod sursa (job #2316959) | Cod sursa (job #3142582) | Cod sursa (job #2506810) | Cod sursa (job #3201687)
#include <fstream>
#include<iostream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
long long i,j,N,M;
long a[20][20], maxim=0, sol[20],v[3];
int solutie(int k)
{
return k==N;
}
void suma()
{
long long sl, st=0, i, j;
for(i=1; i<=M; i++)
{
sl=0;
for(j=1; j<=N; j++)
sl+=sol[j]*a[j][i];
if(sl<0)
sl=-sl;
st+=sl;
}
//for(int i=1;i<=N;i++){for(int j=1;j<=M;j++)cout<<s[i]*a[i][j]<<' ';cout<<endl;}
if(st>maxim)
maxim=st;
}
void back(int k)
{
for(int i=0; i<=1; i++)
{
sol[k]=v[i];
if(k==N)
{//for(int j=1;j<=k;j++)cout<<sol[j];cout<<endl;
suma();}
else back(k+1);
}
}
int main()
{
v[0]=-1;
v[1]=1;
fin>>N>>M;
for(i=1; i<=N; i++)
{
for(j=1; j<=M; j++)
{
fin>>a[i][j];
}
}
back(1);
fout<<maxim;
fin.close();
fout.close();
return 0;
}