티스토리 뷰
내가 작성한 코드
A = int(input())
B = int(input())
C = int(input())
max = A * B * C
max = str(max)
count = [0,0,0,0,0,0,0,0,0,0]
for i in range(len(max)):
if(max[i] == '0'):
count[0] += 1
elif(max[i] == '1'):
count[1] += 1
elif(max[i] == '2'):
count[2] += 1
elif(max[i] == '3'):
count[3] += 1
elif(max[i] == '4'):
count[4] += 1
elif(max[i] == '5'):
count[5] += 1
elif(max[i] == '6'):
count[6] += 1
elif(max[i] == '7'):
count[7] += 1
elif(max[i] == '8'):
count[8] += 1
else:
count[9] += 1
for i in range(len(count)):
print(count[i])
위 방법 말고 더 효율적인 코드가 있을 것 같아 찾아보니
list함수와 count함수를 사용하면 코드길이를 500B를 줄일 수 있다.
최종 코드
A = int(input())
B = int(input())
C = int(input())
max = A * B * C
result = list(str(max))
for i in range(10):
print(result.count(str(i)))
a = ['1', '2', 1, 1, 2]
*list(리스트) : 리스트 형식 반환
ㄴ 예) print(list(a))
['1', '2', 1, 1, 2]
*count(원소) : 리스트 안에 원소 개수를 반환
ㄴ 예) print(a.count(1))
2
1. max값 문자열(str)로 변환 후 list[] 로 묶어 result에 할당한다.
2. 문자열(str) 비교를 위해 str(i) 를 통해 문자열로 변경한다.
3. count() 함수를 통해 result[] 배열에 str(i)가 몇 개 있는지 카운팅한다.
'Code > BackJoon' 카테고리의 다른 글
백준 2920: 음계 [Python] (0) | 2022.01.26 |
---|---|
백준 8958번: OX퀴즈 [Python] (0) | 2022.01.25 |
백준 11721번: 열 개씩 끊어 출력하기 [Python] (0) | 2022.01.24 |
백준 8393번: 합 [Python] (0) | 2022.01.24 |
백준 1924번: 2007년 [Python] (0) | 2022.01.24 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 파이썬 오름차순 정렬
- 별찍기 -2
- 파이썬 거꾸로
- 파이썬 덧셈
- 백준2007년
- 파이썬 내림차순 정렬
- range특징
- 파이썬 반복문
- 백준2441
- 백준11721
- 리눅스계정
- 코딩테스트
- 별찍기 -4
- 리눅스계정경로
- 별찍기 -3
- 별찍기 -1
- 파이썬 오른쪽정렬
- 백준 2742
- 백준1942
- 백준
- 백준 별찍기
- 파이썬
- 코테준비
- 코테
- 백준2920
- reversed함수
- 오른쪽정렬
- 파이썬 find
- 백준코테
- 백준2440
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함