Pagini recente » Cod sursa (job #1463326) | Cod sursa (job #1141232) | Cod sursa (job #2839226) | Cod sursa (job #1313318) | Cod sursa (job #939985)
Cod sursa(job #939985)
#include<fstream>
using namespace std;
long long n, m, a[17][17], col[17], maxsum=0;
void verif(){
int lin[17][2];
for(int i=1; i<=n; i++){
lin[i][0]=0; lin[i][1]=0;
}
int sum=0;
for(int i=1; i<=n; i++){
for(int j=1; j<=m; j++){
if(a[i][j]*col[j]>0)
lin[i][0]+=a[i][j]*col[j];
else
lin[i][1]+=a[i][j]*col[j];
}
if(lin[i][0]+lin[i][1]>0){
sum+=lin[i][0]+lin[i][1];
}else{
sum+=lin[i][0]*(-1)+lin[i][1]*(-1);
}
}
if(sum>maxsum)
maxsum=sum;
}
void gen(int j){
col[j]=1;
if(j<m)
gen(j+1);
else{
verif();
}
col[j]=-1;
if(j<m)
gen(j+1);
else{
verif();
}
}
int main(){
ifstream in("flip.in");
ofstream out("flip.out");
in>>n>>m;
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++){
in>>a[i][j];
}
gen(1);
out<<maxsum<<"\n";
return 0;
}