개발자 톡

연습문제 톡 진정한 효도

코드 공유합니다. 더 깔끔하게 할 수 있는 방법 있으면 공유 부탁드립니다.

등록일
2024-03-19 15:58:05
조회수
400
작성자
imim0523

#include<iostream>

#include<vector>


using namespace std;


class Map{

public:

  Map() : m(3, vector<int>(3, 0)){}

  void insert(int y, int xs[3]) { this->m[y] = vector<int>{xs[0], xs[1], xs[2]}; }


  int MinCost(){

    int cost = 999;


    for (int n = 0; n < 3; n++){

      int temp_cost = 999;

      temp_cost = min(

        abs(this->m[n][1] - this->m[n][0]) + abs(this->m[n][2] - this->m[n][0]),

        abs(this->m[1][n] - this->m[0][n]) + abs(this->m[2][n] - this->m[0][n])

      );


      cost = min(cost, temp_cost);

    }


    return cost;

  }


private:

  vector<vector<int>> m;

};


int main(int argc, char** argv)

{

  Map map;

  for (int i = 0; i < 3; i++){

    int x[3] = {0, };

    cin >> x[0] >> x[1] >> x[2];

    map.insert(i, x);

  }

   

  cout << map.MinCost() << endl;

  return 0;

}

#진정한_효도
#cpp

이 카테고리의 톡 더보기