창고정리
문제는 생략
문제풀이
import sys
sys.stdin=open("input.txt", "r")
n = int(input())
a = list(map(int, input().split())) #리스트에 여러 값을 대입하고 싶은 경우
m = int(input())
a.sort()
#Hint 오름차순으로 정렬했으므로 첫번째 요소가 최솟값이고, 맨 마지막 요소가 최대값이다.
for _ in range(m):
a[n-1]=a[n-1]-1 #최댓값 1감소
a[0]=a[0]+1 #최소값 1증가
a.sort()
#첫번째 요소가 최솟값이 되고, 맨 마지막 요소가 최대값이 되도록 연산이 끝날때마다 지속적으로 오름차순 정렬을 한다.
answer=a[n-1] - a[0]
print(answer)
Hint
1. Hint 오름차순으로 정렬했으므로 첫번째 요소가 최솟값이고, 맨 마지막 요소가 최대값이다.
2. 첫번째 요소가 최솟값이 되고, 마지막 요소가 최대값이 되도록 연산이 끝날 때마다 지속적으로 오름차순 정렬을 한다.
'파이썬 알고리즘 > 이분탐색 & 그리디 알고리즘' 카테고리의 다른 글
9. 증가 하는 수열 만들기 (0) | 2022.11.03 |
---|---|
8.침몰하는 타이타닉(그리디) (0) | 2022.11.03 |
6. 씨름 선수(그리디) (0) | 2022.11.03 |
5. 회의실 배정 (0) | 2022.11.03 |
4. 마구간 정하기 (0) | 2022.11.03 |