문제
미국식 단위와 국제 단위를 변환하라. kg↔lb, l↔g(갤런)의 변환이 주어진다.
입력
테스트 케이스 수와 각 변환할 값과 단위가 주어진다.
출력
변환된 값을 소수점 4자리까지 출력한다.
예제
| 입력 | 출력 |
|---|---|
4 1 kg 1 lb 1 l 1 g | 2.2046 lb 0.4536 kg 0.2642 g 3.7854 l |
풀이
입력 단위에 따라 대응하는 변환 계수를 곱하여 출력한다.
- kg이면 2.2046을 곱해 lb로 변환한다
- lb이면 0.4536을 곱해 kg으로 변환한다
- l이면 0.2642를 곱해 g(갤런)으로 변환한다
- g이면 3.7854를 곱해 l로 변환한다
핵심 아이디어: 단위별 고정 변환 계수를 조건문으로 분기하여 적용한다.
코드
for _ in range(int(input())):
n, s = input().split()
if s == "kg":
print("%.4f %s" % (float(n)*2.2046, "lb"))
elif s == "lb":
print("%.4f %s" % (float(n)*0.4536, "kg"))
elif s == "l":
print("%.4f %s" % (float(n)*0.2642, "g"))
elif s == "g":
print("%.4f %s" % (float(n)*3.7854, "l"))복잡도
- 시간: O(T) — 테스트 케이스당 O(1)
- 공간: O(1) — 상수 변수만 사용