Pagini recente » Cod sursa (job #2426161) | Cod sursa (job #1803270) | Cod sursa (job #46996) | Cod sursa (job #2376287) | Cod sursa (job #193481)
Cod sursa(job #193481)
#include"stdio.h"
#include"stdint.h"
#define vrt 1
#define orz 2
void afis();
int_fast16_t mx[30][30],SUM_MAX=-3000,SUM;
int_fast16_t n,m,g,h,st[100];
bool mn[30][30];
long sum()
{
long sum=0;
for(int g=1;g<=m;g++)for(int h=1;h<=n;h++)
{if(st[h+m]&&st[g])sum+=mx[h][g];
else if(!st[h+m]&&!st[g])sum+=mx[h][g];
else sum-=mx[h][g];
}
return sum;
}
void back(int k)
{
if(k==n+m+1)
{SUM=sum();if(SUM>SUM_MAX)SUM_MAX=SUM;}
else
{st[k]=0;back(k+1);st[k]=1;back(k+1);}
}
int main()
{
freopen("flip.in","r",stdin);freopen("flip.out","w",stdout);
scanf("%d%d",&n,&m);
for(g=1;g<=n;g++)for(h=1;h<=m;h++){scanf("%ld",&mx[g][h]);}
back(1);
printf("%ld",SUM_MAX);
return 0;
}