Pagini recente » Cod sursa (job #1528862) | Cod sursa (job #1698063) | Cod sursa (job #3135066) | Cod sursa (job #2695246) | Cod sursa (job #1511433)
#include <iostream>
#include <fstream>
using namespace std;
int aux[17][17],a[17][17],sol[17],n,m,smax;
ifstream f("flip.in");
ofstream g("flip.out");
void citire(){
f>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
f>>a[i][j];
}
void prelucrare(int k){
int i, j , s, sc;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
aux[i][j]=a[i][j];
for(i=1;i<=k;i++)
for(j=1;j<=m;j++)
aux[sol[i]][j]=-aux[sol[i]][j];
s=0;
for(j= 1; j<=m;j++){
sc=0;
for(i =1;i<=n;i++)
sc+=aux[i][j];
if(sc<0) s-=sc;
else s+=sc;
}
if(s>smax) smax=s;
}
void bkt(int p){
prelucrare(p-1);
for(int i=1+sol[p-1];i<=n;i++){
sol[p]=i;
bkt(p+1);
}
}
int main(){
citire();
bkt(1);
g<<smax;
}