모험가 길드 코드 및 해설 (파이썬)
2021. 8. 16. 15:37ㆍalgorithm
반응형
출처: 이것이 취업을 위한 코딩 테스트다 with 파이썬, Q 1, p 311
그룹의 개수를 저장할 변수인 count를 0으로 초기화합니다. 모험가들의 공포도 리스트를 내림차순으로 정렬하고, 이 중 첫 요소를 꺼내 현재 공포도의 최댓값을 구합니다. 공포도 리스트의 길이가 현재 공포도의 최댓값보다 짧으면 더 이상 그룹을 형성할 수 없어 while문을 탈출하고, 그렇지 않으면 공포도의 최댓값만큼 공포도 리스트의 요소를 삭제합니다. 이는 그룹 하나를 형성했다는 의미이므로 count 값을 하나 증가시킵니다. 마지막으로 count를 반환합니다.
import sys
# 모험가 수
N = int(sys.stdin.readline())
# 공포도 리스트
scared = list(map(int, sys.stdin.readline().split()))
# 내림차순 정렬
scared.sort(reverse=True)
# 모험가 그룹의 수
count = 0
while scared:
# 현재 공포도의 최댓값
x = scared[0]
if len(scared) < x:
break
# 공포도 크기만큼 모험가 수 지우기
scared = scared[x:]
count += 1
print(count)
반응형
'algorithm' 카테고리의 다른 글
백준 뒤집기 코드 및 해설 (파이썬) (0) | 2021.08.16 |
---|---|
곱하기 혹은 더하기 코드 및 해설 (파이썬) (0) | 2021.08.16 |
백준 카드 정렬하기 코드 및 해설 (파이썬) (0) | 2021.08.12 |
프로그래머스 실패율 코드 및 해설 (파이썬) (0) | 2021.08.04 |
백준 안테나 코드 및 해설 (파이썬) (0) | 2021.08.03 |