Notice
Recent Posts
Recent Comments
Link
jyamethyst21 님의 블로그
백준 1076번- '저항' (PYTHON 풀이) 본문
문제:

색을 세가지 입력받는데, 표에 나와있는 값을 활용하여 첫번째와 두번째로 입력한 색은 더하고 마지막 색은 곱해서 출력하면 된다.
풀이:
color = ['black', 'brown', 'red', 'orange', 'yellow', 'green', 'blue', 'violet', 'grey', 'white']
result = []
for i in range(3):
user_input = input()
if user_input in color:
result.append(color.index(user_input))
zero_count = str(0) * result[2]
ppri = (f'{result[0]}{result[1]}{zero_count}')
print(int(ppri))
색을 리스트로 만들고 인덱스를 담을 result 리스트를 선언한다.
그 후 반복문을 돌면서 총 세번 색을 입력받고 color 리스트에 입력받은 값이 있으면 인덱스를 구해서 result에 추가한다. 인덱스를 활용해야겠다고 생각한 이유는 문제의 표를 보면 알다시피, 값이 0부터 1씩 순차적으로 증가하고 있고 이것이 인덱스와 같다고 생각했기 때문이다.
그 다음 첫번째, 두번째 입력은 그냥 붙이면 되지만 세번째 값은 0의 개수를 의미하므로 zero_count 변수에 0 * result[2] 즉, 입력받은 곱할 값과 0의 개수를 반복하였다. str로 변환한 이유는 정수값일 경우 몇을 곱하든 0일테니 str로 변환해서 0의 개수를 조절하였다.
그 다음 ppri 변수에 출력형식에 맞춰서 첫번째, 두번째 값은 더하고 0의 개수인 zero_count는 곱해서 출력하였다.
여기까지만 하면 틀린다. 설마싶어서 정수로 바꿔서 다시 했더니 그제서야 정답이라고 떴다. 문제 출력이 숫자이기 때문에, 이 점 유의해서 출력해주면 된다.
'CODING 💻' 카테고리의 다른 글
| 백준 2530번- '인공지능 시계' (PYTHON 풀이) (0) | 2026.01.09 |
|---|---|
| 백준 1475번- '방 번호' (PYTHON 풀이) (0) | 2026.01.08 |
| 백준 9093번- '단어 뒤집기' (PYTHON 풀이) (0) | 2026.01.06 |
| 백준 10162번- '전자레인지' (PYTHON 풀이) (0) | 2026.01.05 |
| 백준 3460번- '이진수' (PYTHON 풀이) (0) | 2026.01.04 |
