<문제>
1열은 높이가 6으로 6개의 상자가 쌓여 있고, 2열은 3개의 상자, 3열은 9개의 상자가 쌓여 있으며 높이는 9라고 읽는다.
창고 높이 조정은 가장 높은 곳에 상자를 가장 낮은 곳으로 이동하는 것을 말한다.
가장 높은 곳이나 가장 낮은 곳이 여러곳이면 그 중 아무거나 선택하면 된다.
위에 그림을 1회 높이 조정을 하면 다음과 같아진다.
창고의 가로 길이와 각 열의 상자 높이가 주어집니다. m회의 높이 조정을 한 후 가장 높은 곳과 가장 낮은 곳의 차이를 출력하는 프로그램을 작성하세요
창고 정리를 1회 한다
1번 할때마다 가장 큰 높이값을 가진 원소를 가장 낮은 높이의 원소로 옮긴다!
n번 반복할때 가장 높은곳과 가장 낮은곳의 차이는?
import sys
sys.stdin = open("창고정리.txt","r")
L = int(input())
a = list(map(int, input().split()))
m = int(input())
#가장 큰값,작은 값을 얻기위해 정렬한다
a.sort()
#m번 반복한다
for i in range(m):
a[0] += 1
a[L-1] -= 1
a.sort()
print(a[L-1] - a[0])
느낀점
원소들을 리스트로 만든것!