문제
알고리즘
- 반복문을 통해 필요한 세트를 찾는다.
- 반복문을 통해 필요한 숫자를 확인한다.
- 필요한 숫자가 플라스틱 숫자 세트에 있으면 temp에 챙길 플라스틱 숫자를 추가하고 플라스틱 숫자 세트에선 제거한다.
- 필요한 숫자가 플라스틱 숫자 세트에 없지만 6과 9인 경우의 위와 같이 수행한다.
- 필요한 숫자를 챙기고 카운트한다.
코드
import sys
n = list(map(int, sys.stdin.readline().strip()))
cnt = 0
# 반복문을 통해 필요한 세트를 찾는다.
while n:
num = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # 플라스틱 숫자 세트
temp = []
# 반복문을 통해 필요한 숫자를 확인
for i in n:
# 필요한 숫자가 플라스틱 숫자 세트에 있으면
if i in num:
temp.append(i)
num.remove(i)
# 필요한 숫자가 플라스틱 숫자 세트에 없지만 6과 9의 경우인 경우 처리
else:
if i == 6 and 9 in num:
temp.append(i)
num.remove(9)
elif i == 9 and 6 in num:
temp.append(i)
num.remove(6)
# 필요한 숫자를 챙긴다.
for j in temp:
n.remove(j)
# 카운트
cnt += 1
print(cnt)
github
'CodingTest > Baekjoon' 카테고리의 다른 글
[baekjoon] 백준 1531번(파이썬): 투명 (0) | 2022.03.15 |
---|---|
[baekjoon] 백준 1476번(파이썬): 날짜 계산 (0) | 2022.03.14 |
[baekjoon] 백준 1436번(파이썬): 영화감독 숌 (0) | 2022.03.12 |
[baekjoon] 백준 1312번(파이썬): 소수 (0) | 2022.03.10 |
[baekjoon] 백준 1292번(파이썬): 쉽게 푸는 문제 (0) | 2022.03.09 |