파이썬 백준 16435번
실버 5
https://www.acmicpc.net/problem/16435
문제 보기
분류: 그리디 알고리즘, 정렬
문제 풀기
과일을 높이 순으로 오름차순 정렬하여 제일 낮은 과일과 스네이크버드의 길이를 비교한다. 이때, 과일의 높이가 스네이크버드의 길이 보다 작거나 같은면 +1 을 해주고 다음 과일의 높이와 비교한다.
이 반복 작업을 하다가 과일의 높이가 지속적으로 길어진 스네이크버드 보다 높을경우 for loop 을 빠져나오고 그때의 스네이크버드의 길이를 출력한다.
코드 보기
import sys
inputdata = sys.stdin.readline
def fnMaxLengthSnake(L):
fruit_ls.sort()
for f in fruit_ls:
if L >= f:
L += 1
else:
break
print(L)
if __name__ == "__main__":
N, L = map(int, inputdata().split())
fruit_ls = list(map(int, inputdata().split()))
fnMaxLengthSnake(L)
'공부하기 > 백준' 카테고리의 다른 글
[Python] 백준 풀기 9086 - 문자열 (0) | 2023.02.26 |
---|---|
[Python] 백준 풀기 10867 - 중복 빼고 정렬하기 (0) | 2023.02.25 |
[Python] 백준 풀기 15000 - CAPS (0) | 2023.02.23 |
[Python] 백준 풀기 3059 - 등장하지 않는 문자의 합 (0) | 2023.02.22 |
[Java] 백준 풀기 8545 - Zadanie próbne (0) | 2023.02.21 |