Pagini recente » Cod sursa (job #1206818) | Cod sursa (job #2477759) | Cod sursa (job #2031855) | Rating Niculai Dragos (OsDragos) | Cod sursa (job #2191909)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
int n,m,mat[17][17],sum;
void bec(int a,int b)
{
if(a>n)
{
int lsum=0;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
lsum+=mat[i][j]*mat[i][0]*mat[0][j];
}
}
sum=max(sum,lsum);
return;
}
if(b<m)
{
bec(a,b+1);
mat[0][b]=-1;
bec(a,b+1);
mat[0][b]=1;
}
else
{
bec(a+1,b);
mat[a][0]=-1;
bec(a+1,b);
mat[a][0]=1;
}
}
int main()
{
fin>>n>>m;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
fin>>mat[i][j];
}
}
for(int i=1;i<=n;i++)
{
mat[i][0]=1;
}
for(int j=1;j<=m;j++)
{
mat[0][j]=1;
}
bec(1,1);
fout<<sum<<'\n';
return 0;
}