Pagini recente » Borderou de evaluare (job #766763) | Borderou de evaluare (job #1625047) | Borderou de evaluare (job #2975072) | Borderou de evaluare (job #2021998) | Cod sursa (job #2784323)
#include<fstream>
using namespace std;
ifstream cin("filp.in");
ofstream cout("flip.out");
int n,m,a[20][20],sum,ma,sol,f[20];
void backtrack(){
for(int i=1;i<=(1 << n) - 1;i++){
for (int j = 1; j <= n; ++j)
f[j] = 1;
sol=0;
for(int j=i,bit=1;j>0;j/=2,++bit) {
if(j & 1)
{
f[bit]=-1;
}
else
f[bit]=1;
}
for(int l=1;l<=m;l++){
sum=0;
for(int j=1;j<=n;j++)
sum+=a[j][l]*f[j];
sol+=abs(sum);
}
ma = max(ma,sol);
}
cout<<ma;
}
int main() {
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j];
backtrack();
return 0;
}