가오리의 코딩일기
모험가 길드 본문
POINT
- 원소(X)의 값은 공포도의 값이자 모험가 1명임을 의미한다
- 내림차순이 아닌 오름차순을 사용한다
- 2 3 1 2 2 → 1 2 2 2 3 → 1 / 2 2 / 2 3 : 여기서 2 3은 불가능 → 3이 있기 때문에 3이하인 숫자가 하나 더 필요
n = int(input())
x = list(map(int, input().split()))
x.sort() # 오름차순 정리, 내림차순 불가능
group = 0 # 나눌 그룹의 수
member = 0 # 각 그룹의 사람 수
for i in x:
member += 1 # 현재 그룹에 사람 추가
if member >= i: # 현재 그룹에 포함된 모험가 수가 현재 공포도보다 크거나 같으면
group += 1 # 그룹 생성
member = 0 # 이전 그룹은 마무리, 다음 그룹 생성을 위해 사람 수 초기화
print(group)