Pagini recente » Monitorul de evaluare | Cod sursa (job #1162728) | Borderou de evaluare (job #1519351) | Monitorul de evaluare | Cod sursa (job #470330)
Cod sursa(job #470330)
#include<stdio.h>
#define MAX 25
int modul (int m);
int main(){
int x,n,m,a[MAX][MAX],s,sol[MAX],max,k,sum;
int sign,col,i,j;
max=-MAX;
FILE *in=fopen("flip.in","r");
FILE *out=fopen("flip.out","w");
fscanf(in,"%d %d",&n,&m);
int tmp=1;
for(i=1;i<=n;i++){
tmp*=2;
for(j=1;j<=m;j++)
{
fscanf(in,"%d",&a[i][j]);
}}
for(i=0;i<tmp;i++){
k=i;
sum=0;
for(j=1;j<=m;j++)
sol[j]=0;
for(j=1;j<=n;j++){
if (k%2==1)
sign=-1;
else
sign=1;
k=k>>1;
for(col=1;col<=m;col++)
{
sol[col]+=sign*(a[j][col]);
}
}
for(j=1;j<=m;j++) sum+=modul(sol[j]);
if (sum>max)
max=sum;
}
fclose(in);
fprintf(out,"%d",max);
fclose(out);
return 0;
}
int modul (int m) {
if (m>0) return m;
else return -m;
}