새소식

반응형
Algotithms

[백준] 20300 서강근육맨

  • -
728x90
반응형

문제

  • N개의 운동기구가 있고. 각 운동기구마다 근손실이 일어나는 정도가 다르다.
  • PT를 한 번 받을 때 되도록 2개의 운동기구를 사용하려고 할 때, 근손실의 정도가 M을 넘지 않도록 하고 싶다.
  • 이 때 M의 최솟값 구하기
  • 1 <= N <= 10,000

 

풀이

  • 1) N = 짝수인 경우
    정렬한 후, 가장 적은 근손실 운동기구 + 가장 큰 근손실 운동기구를 순서대로 확인한다
  • 2) N = 홀수인 경우
    정렬한 후, 가장 큰 근손실 운동기구를 제외하고 1번과 같이 순서대로 확인한다

 

N = int(input())
t = list(map(int, input().split()))
t.sort()

if N % 2 == 0 :
    m = 0
else :
    m = t.pop()
    N -= 1

for i in range(N//2) :
    if t[i]+t[N-1-i] > m :
        m = t[i]+t[N-1-i]

print(m)

 

References

  • 백준 그리디
반응형

'Algotithms' 카테고리의 다른 글

[백준] 2578 빙고  (0) 2023.10.18
[백준] 2073 수도배관공사  (1) 2023.10.17
[백준] 20546 🐜 기적의 매매법 🐜  (0) 2023.10.11
[백준] 2758 로또  (0) 2023.10.11
[백준] 3165 5  (1) 2023.10.11
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.