👀 문제 설명
전자 제품에는 저항이 들어간다. 저항은 색 3개를 이용해서 그 저항이 몇 옴인지 나타낸다.
처음 색 2개는 저항의 값이고, 마지막 색은 곱해야 하는 값이다.
저항의 값은 다음 표를 이용해서 구한다.
예를 들어, 저항에 색이 yellow, violet, red였다면 저항의 값은 4,700이 된다.
입력
첫째 줄에 첫 번째 색, 둘째 줄에 두 번째 색, 셋째 줄에 세 번째 색이 주어진다. 색은 모두 위의 표에 쓰여 있는 색만 주어진다.
출력
입력으로 주어진 저항의 저항값을 계산하여 첫째 줄에 출력한다.
예제 입력 1
yellow
violet
red
예제 출력 1
4700
✍🏻풀이
string 배열 color에 색 값을 입력해놓고, first, second, third의 색 값을 찾으면 된다.
주의할 점은, int형으로 답을 구하면 범위를 뛰어넘을 수 있으므로 long long 형식으로 구해야 한다.
코드
#include <stdio.h>
#include <iostream>
#include <cmath>
using namespace std;
string color[10] = { "black", "brown", "red", "orange", "yellow", "green", "blue", "violet", "grey", "white" };
int main() {
ios::sync_with_stdio(0);
cin.tie(NULL); cout.tie(NULL);
string first, second, third;
cin >> first >> second >> third;
string ans = "";
string f, s;
long long t;
for (int i = 0; i < 10; i++) {
if (color[i] == first) {
f = to_string(i);
}
if (color[i] == second) {
s = to_string(i);
}
if (color[i] == third) {
t = i;
}
}
ans += (f + s);
long long answer = stoi(ans) * pow(10, t);
cout << answer << "\n";
return 0;
}
'숨막히는 알고말고 > 문제 풀이' 카테고리의 다른 글
[Baekjoon] 숨바꼭질 3 (0) | 2021.03.05 |
---|---|
[Baekjoon] 하얀 칸 (0) | 2021.03.04 |
[Baekjoon] 빵집 (0) | 2021.03.01 |
[Baekjoon] 일곱 난쟁이 (0) | 2021.02.28 |
[Baekjoon] 정수 삼각형 (0) | 2021.02.27 |