본문 바로가기
Develop/백준 (Cpp)

[백준] 2712번 : 미국 스타일 (C++)

by Tarra 2023. 2. 5.

2712번 : 미국 스타일


문제 )

싸이가 강남 스타일로 2012년 10월 4일 현재 빌보드 핫100 차트 2위에 2주 연속 랭크되고 있다. 싸이는 곧 다시 미국으로 가서 해외 활동할 예정이라고 한다.

하지만 미국은 한국과 사용하는 단위 체계가 다르다. 한국은 미터법을 사용하지만, 미국은 미국 단위계를 사용한다. 싸이를 위해 단위를 바꾸어 주는 프로그램을 작성하시오.

아래 표를 참고해서 계산하면 되고, 킬로그램 <-> 파운드, 리터 <-> 갤런만 변환하면 된다.

 

 

 

입력 :

첫째 줄에 테스트 케이스의 개수 T(1<=T<=1,000)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 숫자는 값이고, 두 번째 등장하는 문자는 단위이다. 값은 소수일 수도 있고, 이 경우 소수점 아래 최대 넷째 자리까지 주어진다. 단위는 kg, lb, l, g 중 하나이며, 순서대로 킬로그램, 파운드, 리터, 갤런이다.

 

 

출력 :

각 테스트 케이스에 대해서 바꾼 값과 단위를 출력한다. 값은 반올림해서 소수점 4째자리까지 출력한다. 단위는 kg, lb, l, g중 하나이며, 설명은 입력 설명에 있다.

 

 

 

 

 

풀이)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
 
using namespace std;
 
int main() {
    int t;
    cin >> t;
 
    double value;
    string unit;
    for (int i = 0; i < t; i++) {
        cin >> value >> unit;
 
        // cout의 형식을 고정한다.
        cout << fixed;
        // 소수점 4째 자리까지 출력하도록 한다.
        cout.precision(4);
 
        if (unit == "kg") {
            cout << value * 2.2046 << " lb\n";
        }
        else if (unit == "lb") {
            cout << value * 0.4536 << " kg\n";
        }
        else if (unit == "l") {
            cout << value * 0.2642 << " g\n";
        }
        else if (unit == "g") {
            cout << value * 3.7854 << " l\n";
        }
    }
 
    return 0;
}
 
cs

출처 : https://www.acmicpc.net/problem/2712 

 

2712번: 미국 스타일

첫째 줄에 테스트 케이스의 개수 T(1<=T<=1,000)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 숫자는 값이고, 두 번째 등장하는 문자는 단위이다. 값은 소수일 수도 있고, 이 경

www.acmicpc.net