[백준/Python] 2577번 : 숫자의 개수
문제
https://www.acmicpc.net/problem/2577
- 숫자의 각 자릿값에 사용된 숫자의 개수를 찾는 문제
풀이
인덱스가 숫자를 나타내고, 값을 개수로 가지는 ls 배열을 활용하여 문제를 풀었다.
# 숫자의 개수
A = int(input())
B = int(input())
C = int(input())
ls = [0] * 10
target = A*B*C
for c in str(target):
ls[int(c)] += 1
# 배열의 모든 요소를 띄어서 출력
print(*ls, sep="\n")
후기
과거에 파이썬을 많이 다뤄보지 않고 풀었던 풀이를 보고는 조금 적잖은 충격을 먹었다. 나도 모르는 사이에 조금씩 성장해가는 것 같다. 과거에 내가 풀었던 풀이는 다음과 같다.. 이렇게 간단한 문제를 if문을 활용하여 참 길게도 풀었다.
A = int(input())
B = int(input())
C = int(input())
target = str(A*B*C)
answer = [0,0,0,0,0,0,0,0,0,0]
# solve
for char in target:
if char == '0':
answer[0] +=1
elif char == '1':
answer[1] +=1
elif char == '2':
answer[2] +=1
elif char == '3':
answer[3] +=1
elif char == '4':
answer[4] +=1
elif char == '5':
answer[5] +=1
elif char == '6':
answer[6] +=1
elif char == '7':
answer[7] +=1
elif char == '8':
answer[8] +=1
elif char == '9':
answer[9] +=1
for cnt in answer:
print(cnt)
성장하는 걸 매일 매일 체감할 수 있다면 꾸준히 공부해나가는 데에 참 많은 도움이 되겠지만 매일 일어나는 조금씩의 성장은 1년이 지나고, 시간이 흐르고 나서야 서서히 드러나게 되는 경우가 많은 것 같다. 지금 당장 성장이 더딘 것 같고 공부에 회의감을 느끼게 되더라도 노력은 절대 배신하지 않는다는 사실을 상기하게 됐다.