Pagini recente » Cod sursa (job #2887513) | Cod sursa (job #2566126) | Cod sursa (job #687689) | Cod sursa (job #697315) | Cod sursa (job #1380404)
#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]);
}
}
// int *pboard = &board[0][0];
int all = 1, row, col, sign;
long long sum;
all<<=(M+N);
// printf("%d\n", suma(pboard,N,M));
// row*M+col
for (i=0;i<all;i++){
sum = 0;
sign = 1;
for (row=0;row<N;row++){
if (1&(i>>row))
sign*=-1;
for(j=0;j<M;j++){
if (1&(i>>(N+j)))
sum += sign*board[row][j];
else
sum -= sign*board[row][j];
}
}
if (sum>max)
max = sum;
}
fprintf(out,"%lld", max);
fclose(in);
fclose(out);
// getch();
return 0;
}