https://www.acmicpc.net/problem/1076
문제
전자 제품에는 저항이 들어간다. 저항은 색 3개를 이용해서 그 저항이 몇 옴인지 나타낸다. 처음 색 2개는 저항의 값이고, 마지막 색은 곱해야 하는 값이다. 저항의 값은 다음 표를 이용해서 구한다.
| black | 0 | 1 |
| brown | 1 | 10 |
| red | 2 | 100 |
| orange | 3 | 1,000 |
| yellow | 4 | 10,000 |
| green | 5 | 100,000 |
| blue | 6 | 1,000,000 |
| violet | 7 | 10,000,000 |
| grey | 8 | 100,000,000 |
| white | 9 | 1,000,000,000 |
예를 들어, 저항의 색이 yellow, violet, red였다면 저항의 값은 4,700이 된다.
코드
keys = ['black', 'brown', 'red', 'orange', 'yellow',
'green', 'blue', 'violet', 'grey', 'white']
R = dict.fromkeys(keys)
num = 0
for i in keys:
R[i] = num
num += 1
A = input()
B = input()
C = input()
print((R[A]*10 + R[B]) * (10 ** R[C]))
풀이
1. 일단 문자열을 keys로 다 받은 후 dict.fromkeys를 이용해 value값은 None으로 두고 키를 R 딕셔너리에 입력한다
2. 그리고 이제 각 키값에 value값을 넣어준다.
3. 이제 사용할 저항을 입력받고
4. 저항값을 출력한다.
4-1. Ax10 + B로 저항 값을 구하고 10에 C 거듭제곱을 통해 곱해야 할 값을 구해 둘을 곱한다.
'백준 > 브론즈2' 카테고리의 다른 글
| [Python] 백준 1673번 - 치킨 쿠폰 (0) | 2025.04.25 |
|---|---|
| [Python] 백준 1100번 - 하얀 칸 (0) | 2025.04.25 |
| [Python] 백준 1075번 - 나누기 (0) | 2025.04.24 |
| [Python] 백준 1009번 - 분산처리 (0) | 2025.04.24 |
| [Python/C] 백준 1408번 - 24 (0) | 2025.04.17 |