그리디 & 구현 2

HakJun·2022년 3월 8일
0

정렬을 한후 낮은 공포도의 모험가부터 공포도와 배열의 원소개수를 비교를 통해 배열을 형성할지, 말지를 통해 결과적인 횟수를 구할 수 있었다.

---소스코드---

import sys

n = int(sys.stdin.readline().rstrip())
date = list(map(int, sys.stdin.readline().split()))
date.sort()

result = 0 #총 그룹의 수
count = 0 #현재 그룹에 포함된 모험가의 수

for i in date: #공포도 낮은것부터 확인
    count+=1 #현재 그룹에 해당모험가 포함시키기
    if count>=i: #현재 그룹에 포함된 모험가의 수가 현재의 공포도 이상이라면, 그룹 결성
        result+=1 #총 그룹의 수 증가시키기
        count = 0 #현재 그룹에 포함된 모험가의 수 초기화

print(result) # 총 그룹의 수 출력력
profile
백엔드 & 전공 공부

0개의 댓글