Pagini recente » Cod sursa (job #911683) | Monitorul de evaluare | Cod sursa (job #2446753) | Cod sursa (job #2253937) | Cod sursa (job #895383)
Cod sursa(job #895383)
#include<cstdio>
FILE *f=fopen("flip.in","r");
FILE *g=fopen("flip.out","w");
using namespace std;
int v[20];
int a[20][20],n,m;
int SOL=-1<<30;
inline void write ( void )
{
fprintf(g,"%d",SOL);
}
void bkt( int k )
{
int sum=0,S=0;
if(k == m+1)
{
for(int i(1); i <= n ; i++)
{
sum=0;
for(int ii(1); ii <= m ; ++ii )
sum+=a[i][ii]*v[ii];
if(sum<0)
S+=-sum;
else
S+=sum;
}
if(S>SOL)
SOL=S;
return;
}
v[k]=1;
bkt(k+1);
v[k]=-1;
bkt(k+1);
}
int main()
{
fscanf(f,"%d%d",&n,&m);
for(int i(1); i <= n; ++i )
for(int j(1); j <= m ; ++j)
fscanf(f,"%d",&a[i][j]);
bkt(1);
write();
return 0;
}