문제 분석
- 다솜이는 은진이 옆집
- 다솜이는 자기 방 번호에 플라스틱 번호를 붙이려고 함
- 플라스틱 숫자는 한 세트
- 방 번호가 주어졌을 때 최소 몇 세트의 플라스틱 숫자번호 세트가 필요한가
- 6과 9는 뒤집어서 이용 가능
코드 설계
- 해당 번호에 대해 문자열 개수를 세는데, 만약 6 또는 9이면 6에 카운트
- 6, 9는 홀수번째 들어오는 것만 체크
- 해당 인덱스 번호 +1
- 가장 큰 값 출력
정답 코드
import sys
input = sys.stdin.readline().strip
num = input()
num_set = [0] * 10 # 0~9
check= 0
for n in num :
if n == '6' or n == '9' :
if check == 1 :
check = 0
continue
else :
num_set[6] += 1
check = 1
else : # 이렇게 안하면 6이나 9일때 한번 더 카운트됨
num_set[int(n)] += 1
print(max(num_set))
다른 사람 코드 1
word = input()
ans = [0] * 10
for i in range(len(word)):
num = int(word[i])
if num == 6 or num == 9:
if ans[6] <= ans[9]:
ans[6] += 1
else:
ans[9] += 1
else:
ans[num] += 1
print(max(ans))
- 6 or 9 중 작은 횟수를 기준으로 증 적게 등장한 기준으로 증
'코딩 테스트 > 백준' 카테고리의 다른 글
[Python] 백준 10809 알파벳 찾기 (0) | 2024.12.24 |
---|---|
[Python] 백준 3273 두 수의 합 (0) | 2024.12.23 |
[Python] 백준 10808 알파벳 개수 (0) | 2024.12.23 |
[Python] 백준 7576 토마토 (0) | 2024.12.23 |
[Python] 백준 1463 1로 만들기 (1) | 2024.12.22 |