※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 2712번 미국 스타일이다.
문제는 아래 링크를 확인하자.

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

 

2712번: 미국 스타일

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

www.acmicpc.net

문제의 지문에 적혀있는 수치를 이용해 각 단위를 환산하는 문제이다.

 

kg가 주어지면 주어지는 값에 2.2046을 곱해 lb값을, lb가 주어지면 주어지는 값에 0.4536을 곱해 kg값을 구해낼 수 있다. 이와 같은 방법으로 부피의 단위 또한 환산할 수 있다.

 

아래는 제출한 소스코드이다.

#include <iostream>
#include <string>
using namespace std;
typedef long double ld;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	cout << fixed;
	cout.precision(4);

	int T; cin >> T;
	while (T--) {
		ld x; string unit; cin >> x >> unit;
		if (unit == "kg") cout << x * 2.2046 << " lb\n";
		else if (unit == "lb") cout << x * 0.4536 << " kg\n";
		else if (unit == "l") cout << x * 0.2642 << " g\n";
		else cout << x * 3.7854 << " l\n";
	}
}
728x90

+ Recent posts