Pagini recente » Cod sursa (job #2623594) | Cod sursa (job #3165383) | Cod sursa (job #2095028) | Cod sursa (job #2371286) | Cod sursa (job #1222793)
#include <stdio.h>
using namespace std;
int n,m,a[20][20],b[20],sumc[20],maxim;
int main()
{
freopen("flip.in","r",stdin);
freopen("flip.out","w",stdout);
scanf("%d %d\n",&n,&m);
for (int i=1;i<=n;++i)
{
for (int j=1;j<=m;++j)
{
scanf("%d ",&a[i][j]);
}
}
int nr=1<<n,sum;
for (int i=1;i<=m;++i)
{
for (int j=1;j<=n;++j)
{
sumc[i]+=a[j][i];
}
}
maxim=-400000000;
while (nr>0)
{
sum=0;
for (int i=1;i<=m;++i) if (sumc[i]<0) sum+=(-sumc[i]);else sum+=sumc[i];
if (sum>maxim) maxim=sum;
int i=1; while (b[i]==1) { b[i]=0; for (int j=1;j<=m;++j) sumc[j]+=2*a[i][j]; ++i; }
b[i]=1; for (int j=1;j<=m;++j) sumc[j]-=2*a[i][j];
--nr;
}
printf("%d",maxim);
fclose(stdin);
fclose(stdout);
return 0;
}