Pagini recente » Cod sursa (job #1213621) | Cod sursa (job #1630881) | Cod sursa (job #4168) | Cod sursa (job #2149264) | Cod sursa (job #2003975)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("flip.in");
ofstream g("flip.out");
int n,m,a[20][20],v[20],maxim,t[20][20];
void rezolvare(int k)
{
int i,j,s=0,s1=0;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
a[i][j]=t[i][j];
}
}
for(i=1;i<=k;i++)
{
for(j=1;j<=m;j++)
{
a[v[i]][j]=a[v[i]][j]*(-1);
}
}
for(i=1;i<=m;i++)
{
s1=0;
for(j=1;j<=n;j++)
{
s1=s1+a[j][i];
}
if(s1<0)
{
s=s+(-1)*s1;
}
else
{
s=s+s1;
}
}
if(s>maxim)
{
maxim=s;
}
}
void bkt(int k)
{
int i;
for(i=v[k-1]+1;i<=n;i++)
{
v[k]=i;
rezolvare(k);
if(k<n)
{
bkt(k+1);
}
}
}
int main()
{
int i,j;
f>>n>>m;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
f>>t[i][j];
}
}
bkt(1);
g<<maxim;
return 0;
}