Notice
Recent Posts
Recent Comments
Link
jyamethyst21 님의 블로그
백준 16435번- '스네이크버드' (PYTHON 풀이) 본문
문제:

과일의 개수와 초기 길이 정수, 과일의 높이가 주어질 때 과일을 먹고 길어질 수 있는 스네이크버드의 최대 길이를 출력하면 된다.
풀이:
N, L = map(int,input().split())
h = list(map(int,input().split()))
h2 = sorted(h)
for i in range(len(h2)):
if L >= h2[i]:
L += 1
else:
break
print(L)
우선 문제를 보자마자 정렬을 해야겠다는 생각을 했다. 왜냐면 자기보다 긴 수밖에 없는 경우는 먹지 못하기 때문에, 정렬을 해서 이를 구분하는 게 먼저라고 생각했다.
입력을 3개의 변수에 받고 두번째 줄 입력은 리스트 변환 후 오름차순으로 정렬하였다.
그 다음 반복문을 통해서 정렬된 리스트를 전부 돌건데, 이때 초기 길이 정수보다 작은 경우에는 반복문을 탈출하고 그렇지 않은 경우에만 길이를 1씩 늘리도록 로직을 짜주었다.
마지막으로 반복문을 다 돈 뒤에 L을 출력하면 문제를 풀 수 있다.
'CODING 💻' 카테고리의 다른 글
| 백준 3058번- '짝수를 찾아라' (PYTHON 풀이) (1) | 2026.01.23 |
|---|---|
| 백준 14720번- '우유 축제' (PYTHON 풀이) (1) | 2026.01.22 |
| 백준 10102번- '개표' (PYTHON 풀이) (0) | 2026.01.20 |
| 백준 2083번- '럭비 클럽' (PYTHON 풀이) (0) | 2026.01.19 |
| 백준 4796번- '캠핑' (PYTHON 풀이) (0) | 2026.01.18 |
