컴퓨터공학 💻 도서관📚

그리디 유형 문제 . 4 본문

✅🌲강의 복습 노트/이코테2021 알고리즘 훈련

그리디 유형 문제 . 4

들판속초록풀 2024. 10. 19. 18:06

 

 

 

 

그리디 알고리즘 정당성 분석 :

 

공포도가 낮은 애부터 그룹으로 만들면 최대가 나오겠다는 아이디어
이를 실현하기 위해 공표도가 낮은 얘들을 먼저 보고 싶으니까
'오름차순 정렬' 테크닉 사용

 

 

 

그룹을 만드는 방법 / 디테일 :

 

'현재 그룹에 포함된 모험가의 수'가 '현재 확인하고 있는 공포도'보다 크거나 같다면 이를 그룹으로 설정

 

 

 

N = int(input())

data = list(map(int, input().split()))      # 한 줄에 여러 개의 정수를 입력받는 방법

data.sort()          # 파이썬에서 오름차순 정렬하는 법

count =0             # 초기화
group_num =0

for i in data:
    count += 1            # 모든 경우가 다 해야 하는 연산
    if count >= i:        # if문이 참일 때 하는 연산
        group_num += 1
        count = 0
                          # if문이 거짓일 때 하는 연산 : 여기선 아무것도 없다
print(group_num)

 

 

for + if  연계 패턴 :

 

for문 안에서

처음에는 모든 경우에서 수행해야 하는 코드를 적고

 

특정 경우를 if문이 참일 때 수행하게 하고

 

나머지 경우에서 수행해야 할 코드를 if문 아래에 적는다

 

 

 

 

'✅🌲강의 복습 노트 > 이코테2021 알고리즘 훈련' 카테고리의 다른 글

구현 유형 문제 . 2  (0) 2024.10.20
구현 유형 설명 . 1  (0) 2024.10.19
그리디 유형 문제 . 3  (0) 2024.10.18
그리디 유형 문제 . 2  (0) 2024.04.07
그리디 알고리즘 . 1  (0) 2024.04.03
Comments