문제 링크
https://www.acmicpc.net/problem/2577
나의 코드 (Python)
# 각 자리를 카운팅할 배열
cnt = [0] * 10
# 입력값
a = int(input())
b = int(input())
c = int(input())
# 숫자의 곱
res = str(a * b * c)
for i in res: # 각 자리를 카운팅
for j in range(10): # 0~9를 돌면서 해당 자리수를 카운팅
if int(i) == j:
cnt[j] += 1
break
# 결과 출력
for k in cnt:
print(k)
세 숫자의 곱에 각 숫자들이 어떤 숫자들로 이뤄지는지 숫자들이 몇 번씩 쓰였는지를 출력합니다.
세 숫자의 곱은 str로 감싸서 반복문을 통해서 한 글자씩 분리할 수 있습니다.
이를 for j in range(10):을 통해서 0~9와 비교합니다.
해당 되는 숫자를 만나면 cnt[j] += 1 을 통해서 카운팅합니다.
이를 for 문으로 출력합니다.
다른 풀이
# 세 숫자 입력
a = int(input())
b = int(input())
c = int(input())
# 세 숫자의 곱
result = list(str(a * b * c))
# 각 자리 수 카운팅
for i in range(10):
print(result.count(str(i)))
'코딩공부 > 백준 (python)' 카테고리의 다른 글
[백준 1546] 평균 (Python) (0) | 2022.02.22 |
---|---|
[백준 3052] 나머지 (Python) (0) | 2022.02.22 |
[백준 2562] 최댓값 (Python) (0) | 2022.02.22 |
[백준 10818] 최소, 최대 (Python) (0) | 2022.02.20 |
[백준 1110] 더하기 사이클 (Python) (0) | 2022.02.20 |
댓글