Pagini recente » Cod sursa (job #1042971) | Cod sursa (job #2536751) | Cod sursa (job #176153) | Cod sursa (job #2669210) | Cod sursa (job #1369843)
#include<fstream>
using namespace std;
ifstream fin( "flip.in" );
ofstream fout( "flip.out" );
const int inf = 1 << 30;
const int nmax = 16;
int n, m, ans;
int v[ nmax + 1 ][ nmax + 1 ];
int l[ nmax + 1 ];
void bck( int lin ) {
if ( lin == n + 1 ) {
int sum = 0;
for( int j = 1; j <= m; ++ j ) {
int x = 0;
for( int i = 1; i <= n; ++ i ) {
x += v[ i ][ j ] * l[ i ];
}
if ( x < 0 ) {
sum += -x;
} else {
sum += x;
}
}
if ( sum > ans ) {
ans = sum;
}
return ;
}
bck( lin + 1 );
l[ lin ] = -1;
bck( lin + 1 );
l[ lin ] = 1;
}
int main() {
fin >> n >> m;
for( int i = 1; i <= n; ++ i ) {
l[ i ] = 1;
for( int j = 1; j <= m; ++ j ) {
fin >> v[ i ][ j ];
}
}
ans = -inf;
bck( 1 );
fout << ans << "\n";
fin.close();
fout.close();
return 0;
}