Pagini recente » Cod sursa (job #293561) | Cod sursa (job #2380070) | Cod sursa (job #3276567) | Cod sursa (job #2197833) | Cod sursa (job #3193269)
#include <fstream>
using namespace std;
ifstream cin("flip.in");
ofstream cout("flip.out");
#define int long long
const int minS=-256e9;
int mat[16][16],n,m,maxs=minS-5;
void swapl(int ind)
{
for(int i=1;i<=m;i++)
mat[ind][i]*=(-1);
}
void swapc(int ind)
{
for(int i=1;i<=n;i++)
mat[i][ind]*=(-1);
}
void verificare()
{
int s=0;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
s+=mat[i][j];
}
}
maxs=max(maxs,s);
}
void swapcol(int poz)
{
if(poz==m+1)
{
verificare();
return ;
}
swapc(poz);
swapcol(poz+1);
swapc(poz);
swapcol(poz+1);
}
void swapline(int poz)
{
if(poz==n+1)
{
swapcol(1);
return ;
}
swapl(poz);
swapline(poz+1);
swapl(poz);
swapline(poz+1);
}
signed main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>mat[i][j];
swapline(1);
cout<<maxs;
return 0;
}