Pagini recente » Cod sursa (job #1895292) | Cod sursa (job #3232088) | Cod sursa (job #3235438) | Cod sursa (job #3276756) | Cod sursa (job #2620953)
#include <stdio.h>
#include <stdlib.h>
int v[17][17];
int main(){
int i,j,n,m,t,z,b,ma,x,s;
FILE *fin,*fout;
fin=fopen("flip.in","r");
fout=fopen("flip.out","w");
fscanf(fin,"%d%d",&n,&m);
ma=0;
x=0;
for(i=0;i<n;i++){
for(j=0;j<m;j++){
fscanf(fin,"%d",&v[i][j]);
ma+=v[i][j];
}
}
b=ma;
t=1<<n;
for(z=0;z<t;z++){
s=b;
for(i=0;i<n;i++){
if(((z>>i)&1)==1){
for(j=0;j<n;j++){
s-=v[j][i]*2;
}
}
}
if(s>ma){
ma=s;
x=z;
}
}
z=x;
for(i=0;i<n;i++){
if(((z>>i)&1)==1){
for(j=0;j<n;j++){
v[j][i]*=-1;
}
}
}
b=ma;
t=1<<m;
for(z=0;z<t;z++){
s=b;
for(i=0;i<m;i++){
if(((z>>i)&1)==1){
for(j=0;j<m;j++){
s-=v[i][j]*2;
}
}
}
if(s>ma){
ma=s;
x=z;
}
}
fprintf(fout,"%d",ma);
fclose(fin);
fclose(fout);
return 0;
}