[백준] 20300번 : 서강근육맨 (Python)
2023. 3. 16. 01:50ㆍ알고리즘/그리디
https://www.acmicpc.net/problem/20300
20300번: 서강근육맨
PT 첫째 날에 $1$과 $4$를 선택하고, 둘째 날에 $2$와 $3$을 선택하고, 마지막 날에 $5$를 선택하면 $M$은 $5$가 되며, 이때가 $M$이 최소일 때이다.
www.acmicpc.net
💡 문제 접근
- 운동기구가 짝수일 때와 홀수일 때를 각각 생각해야함
- 짝수일 때는 가장 작은 값과 큰 값을 짝지어서 더해주고
- 홀수일 때는 가장 큰 값을 혼자 두기
💡 내 코드
# 서강근육맨
n = int(input())
m= list(map(int,input().split()))
m= sorted(m) # 기구 근손실 작은 값부터 정렬
result= []
if n % 2 ==0: # 운동기구 수 짝수일 때
j = n-1
else: # 운동기구 수 홀수일 때
j=n-2
result.append(m[-1])
i=0
while i < j:
cnt= m[i]+m[j]
result.append(cnt)
i+=1
j-=1
print(max(result))

'알고리즘 > 그리디' 카테고리의 다른 글
[백준] 19941번 : 햄버거 분배 (Python) (0) | 2023.03.16 |
---|---|
[백준] 20115번 : 에너지 드링크 (Python) (0) | 2023.03.16 |
[백준] 11508번 : 2+1 세일 (Python) (0) | 2023.03.15 |
[백준] 1758번 : 알바생 강호 (Python) (1) | 2023.03.15 |
[백준] 13305번 : 주유소 (Python) (0) | 2023.03.15 |