Guest User

Untitled

a guest
Oct 23rd, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.06 KB | None | 0 0
  1. #include <cstdio>
  2. #include <algorithm>
  3.  
  4. #define KONJ 42 - 42
  5. #define MAXN 100010
  6. #define INF 1000000000
  7.  
  8. using namespace std;
  9.  
  10. int N, K;
  11. int niz[MAXN][7];
  12. int calc[ ( 1 << 6 ) + 1 ][MAXN];
  13.  
  14. int main( void ){
  15.  
  16.     scanf( "%d%d", &N, &K );
  17.     for ( int i = 0; i < N; ++i ){
  18.         for ( int j = 0; j < K; ++j ){
  19.             scanf( "%d", &niz[i][j] );
  20.         }
  21.     }
  22.  
  23.     for ( int i = 0; i < ( 1 << K ); ++i ){
  24.         for ( int j = 0; j < N; ++j ){
  25.             for ( int k = 0; k < K; ++k ){
  26.                 if ( ( i | ( 1 << k ) ) == 0 ){ calc[i][j] += niz[j][k]; } else { calc[i][j] -= niz[j][k]; }
  27.             }
  28.         }
  29.     }
  30.    
  31.     int sol = -INF;
  32.     for ( int i = 0; i < ( 1 << K ); ++i ){
  33.         int _i = !i, maks = -INF, mini = INF;
  34.         for ( int j = 0; j < N; ++j ){
  35.             maks = max( maks, calc[i][j] );
  36.             mini = min( mini, calc[_i][j] );
  37.         }
  38.         //printf( "%d %d %d %d\n", i, _i, maks, mini );
  39.         sol = max( sol, maks - mini );  
  40.     }
  41.  
  42.     printf( "%d\n", sol );
  43.  
  44.     return KONJ;
  45.  
  46. }
Add Comment
Please, Sign In to add comment