Pagini recente » Cod sursa (job #3158750) | Cod sursa (job #1259185) | Cod sursa (job #437593) | Cod sursa (job #2150838) | Cod sursa (job #3033581)
#include <fstream>
#include <climits>
using namespace std;
ifstream cin("flip.in");
ofstream cout("flip.out");
int a[20][20],i,j,n,m,k,elem,semn,x;
long long suma_lin,maxi,s,s1,suma_col;
int main()
{
cin>>n>>m;maxi=LLONG_MIN;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
cin>>a[i][j];
for(k=0; k<=(1<<n)-1; k++)
{
x=k;
elem=0;
while(x!=0)
{
elem++;
if(x%2==1)
a[elem][0]=-1,a[0][elem]=-1;
else
a[elem][0]=1,a[0][elem]=1;
x=x/2;
}
s=0;s1=0;
for(i=1; i<=n; i++)
{
suma_lin=0;
for(j=1; j<=m; j++)
suma_lin+=a[i][0]*a[i][j]*a[0][j];
if(suma_lin<0)
suma_lin=-suma_lin;
s=s+suma_lin;
}
maxi=max(s,maxi);
for(j=1;j<=m;j++)
{
suma_col=0;
for(i=1;i<=n;i++)
suma_col+=a[0][j]*a[i][j]*a[i][0];
if(suma_col<0)
suma_col=-suma_col;
s1=s1+suma_col;
}
maxi=max(s1,maxi);
}
cout<<maxi;
return 0;
}
///int x, y, elem, n, z;
/*cin>>n;
for(int i=1;i<=n;i++)
{
cin>>elem;
x = x | (1<<elem);
}
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>elem;
y = y | (1<<elem);
}
z=x&y;//intersectia
elem=0;
while(z!=0)
{
if((z&1)!=0)
cout<<elem<<" ";
z =(z>>1);
elem++;
}*/