백준알고리즘 - 5543 상근날드 <브론즈 4>

2020. 4. 24. 09:19알고리즘_생각하기/백준 알고리즘 브론즈

문제

상근날드에서 가장 잘 팔리는 메뉴는 세트 메뉴이다. 주문할 때, 자신이 원하는 햄버거와 음료를 하나씩 골라, 세트로 구매하면, 가격의 합계에서 50원을 뺀 가격이 세트 메뉴의 가격이 된다.

햄버거는 총 3종류 상덕버거, 중덕버거, 하덕버거가 있고, 음료는 콜라와 사이다 두 종류가 있다.

햄버거와 음료의 가격이 주어졌을 때, 가장 싼 세트 메뉴의 가격을 출력하는 프로그램을 작성하시오.

입력

입력은 총 다섯 줄이다. 첫째 줄에는 상덕버거, 둘째 줄에는 중덕버거, 셋째 줄에는 하덕버거의 가격이 주어진다. 넷째 줄에는 콜라의 가격, 다섯째 줄에는 사이다의 가격이 주어진다. 모든 가격은 100원 이상, 2000원 이하이다.

출력

첫째 줄에 가장 싼 세트 메뉴의 가격을 출력한다.

 

풀이

 

사용한 언어 : C++

#include  <iostream>

int main()
{
        int a = 0; //상덕버거
        int b = 0; //중덕버거
        int c = 0; //하덕버거

        int d = 0; //콜라
        int e = 0; //사이다

        int select1 = 0; //선택한 햄버거
        int select2 = 0; //선택한 콜라

        int answer = 0; //정답

       //시간을 줄이기 위해 std를 각각 선언해준다.
       std::cin >> a; //상덕버거 가격 입력
       std::cin >> b; //중덕버거 가격 입력
       std::cin >> c; //하덕버거 가격 입력
       std::cin >> d; //콜라 가격 입력
       std::cin >> e; //사이다 가격 입력

      //=을 넣은 것은 같은 가격일때를 비교하기 위함
      if (select1 == 0) //아직 햄버거를 선택하지 않았다면
      {
              if (a >= b) //상덕버거와 중덕버거 비교
              {
                    select1 = b; //싼 것 넣기
               }
              else if (a <= b) 
              {
                     select1 = a;
              }

       }
       if (select1 != 0) //상덕버거, 중덕버거 중 하나의 가격이 들어갔다면
       {
              if (select1 > c) //하덕버거도 비교
              {
                    select1 = c; //하덕버거가 더 싸면 넣고 아니면 유지
               }
        }

       if (select2 == 0) //음료 선택하지 앟았다면
       {
              if (d >= e) //음료 비교
              {
                   select2 = e; //싼 것 넣기
               }
               else if (d <= e)
               {
                   select2 = d;
               }
       }


          answer = (select1 + select2) - 50; //세트메뉴는 (버거 + 음료) - 50원
          printf("%d", answer);

}