[Baekjoon/Python] 1475. 방 번호

mj·2025년 6월 11일
0

코딩테스트문제

목록 보기
52/59

문제

https://www.acmicpc.net/problem/1475

풀이

🧠 접근 방법

우선 문자열로 주어진 방 번호를 받아, 각 숫자가 몇 번 등장하는지 세어야 한다.
그리고 필요한 숫자 세트의 개수를 계산하면 된다.

핵심 포인트

  • 각 숫자의 등장 횟수를 리스트에 저장

  • 6과 9는 합쳐서 계산한 뒤 올림 처리

  • 가장 많이 등장한 숫자의 개수가 필요한 세트 수


💻 파이썬 코드

n = input()
cnt = [0] * 10

for i in n:
    i = int(i)
    cnt[i] += 1

cnt[6] = cnt[9] = (cnt[6] + cnt[9] + 1) // 2

print(max(cnt))

✨ 마무리

이 문제의 포인트는 6과 9를 하나로 묶어 생각하고, 그 합의 올림 값을 구하는 것이다.
정수 연산으로 올림을 표현할 수 있다는 것도 실전에서 유용하게 쓰일 수 있는 팁!

정수 올림

  • 방법 1 : int(math.ceil(x / 2))
  • 방법 2 : (x + 1) // 2

정수 올림하는 방법에는 2가지가 있다.
방법1의 경우 import math해주어야 하고, 따로 정수로 변환하는 int()과정이 필요하기 때문에 번거롭다.
방법2가 더 간단한 방법이다.

profile
그냥 하자.

0개의 댓글