Pagini recente » Cod sursa (job #2437418) | Cod sursa (job #1520438) | Cod sursa (job #2631342) | Cod sursa (job #1577792) | Cod sursa (job #1380438)
#include<stdio.h>
//#include<conio.h>
#include<stdlib.h>
int main(){
int i,j,M,N;
FILE *in,*out;
in = fopen("flip.in","r");
out = fopen("flip.out","w+");
if(!fscanf(in, "%d %d\n", &N, &M)) return 1;
int board[N][M];
long long max = 0;
for(i=0;i<N;i++){
for(j=0;j<M;j++){
if(!fscanf(in, "%d ", &board[i][j])) return 1;
max+=board[i][j];
// printf("%d ", board[i][j]);
}
}
fclose(in);
// int *pboard = &board[0][0];
int all = 1, row, sign;
long long sum, sump;
all<<=N;
// printf("%d\n", suma(pboard,N,M));
// row*M+col
for (i=0;i<all;i++){
sum = 0;
for(j=0;j<M;j++){
sump=0;
for(row=0;row<N;row++){
sign = 1;
if (1&(i>>row))
sign*=-1;
sump += sign*board[row][j];
}
sum += sump>0?sump:-sump;
}
if (sum>max)
max = sum;
}
fprintf(out,"%lld", max);
fclose(out);
// getch();
return 0;
}