알고리즘 공부/파이썬(Python)

백준 1475번 방 번호 파이썬

마달랭 2024. 7. 6. 22:20
반응형

리뷰

딕셔너리를 활용하여 풀었다.

 

문제 풀이

  1. 0 ~ 9를 키를 갖는 딕셔너리를 값을 0으로 초기화 해준다.
  2. 각 딕셔너리에 입력 숫자의 자릿수를 더해준다.
  3. 6과 9의 경우 뒤집어 사용할 수 있기 때문에 각 키값은 6과 9의 개수를 더한 값을 2로 나누어 반올림 해준다.
  4. 딕셔너리의 값중 최고값을 출력해 준다.

 

참고 사항

6과 9의 개수 합이 홀수일 경우 2로 나눈 뒤 올림 처리 해줘야 한다.

 

 

정답 코드

def q1475():
    # 백준 1475번 방 번호 파이썬
    n = int(input())
    dic = {i: 0 for i in range(10)}
    while n:
        dic[n % 10] += 1
        n //= 10
    if dic[6] + dic[9]:
        dic[6], dic[9] = int((dic[6] + dic[9]) / 2 + 0.5), int((dic[9] + dic[6]) / 2 + 0.5)
    print(max(dic.values()))
q1475()

 

 

728x90
반응형