Don't like ads? PRO users don't see any ads ;-)

Untitled

By: kooinam on Jun 22nd, 2012  |  syntax: None  |  size: 0.78 KB  |  hits: 10  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. static int sum[3][3] = {0};
  5.  
  6. int ky(int a[3][3]){
  7.         int store[9] = {0};
  8.         int k = 0;
  9.         int res = 1000000;
  10.         for(int i = 0; i < 3; i++){
  11.                 for(int j = 0; j < 3; j++){
  12.                         store[k] = a[(i+1)%3][j]+a[(i+2)%3][j];
  13.                         k++;
  14.                 }
  15.         }
  16.         for(int i = 0; i < 3; i++){
  17.                 for(int j = 0; j < 3; j++){
  18.                         a[i][j] = store[i*3+j];
  19.                        
  20.                 }
  21.         }
  22.         for(int i = 0; i < 3; i++){
  23.                 for(int j = 0; j < 3; j++){
  24.                         sum[i][j] = min(a[(i+1)%3][(j+1)%3]+a[(i+2)%3][(j+2)%3],a[(i+1)%3][(j+2)%3]+a[(i+2)%3][(j+1)%3]);
  25.                         sum[i][j] += a[i][j];
  26.                 }
  27.         }
  28.         for(int i = 0; i < 3; i++){
  29.                 for(int j = 0; j < 3; j++){
  30.                         res = min((int)res,sum[i][j]);
  31.                 }
  32.         }
  33.         return res;
  34. }
  35.  
  36. int main() {
  37.         int arr[3][3] = {{5,10,5},{20,10,5},{10,20,10}};
  38.         cout << ky(arr);
  39.     return 0;
  40. }