[Inflearn] PS - 003

raincoat03·2020년 6월 14일
0

PS

목록 보기
5/27
post-thumbnail

문제 출처 : inflearn <파이썬 알고리즘 문제풀이(코딩테스트 대비)>

▣ 입력설명
첫 번째 줄에 창고 가로의 길이인 자연수 L(1<=L<=100)이 주어집니다.
두 번째 줄에 L개의 자연수가 공백을 사이에 두고 입력됩니다. 각 자연수는 100을 넘지
않습니다
세 번째 줄에 높이 조정 횟수인 M(1<=M<=1,000)이 주어집니다.

▣ 출력설명
M회의 높이 조정을 마친 후 가장 높은곳과 가장 낮은 곳의 차이를 출력하세요.

▣ 입력예제 1
10
69 42 68 76 40 87 14 65 76 81
50

▣ 출력예제 1
20

풀이

'''
접근
1. 높이를 역순으로 정렬
2. n번 돌때까지 리스트[0] - 1, 리스트[l-1] + 1 반복
3. 리스트의 최대과 최소값 출력
'''

import sys
#sys.stdin=open("input.txt", "r")
l = int(input())
a = list(map(int, input().split()))
n = int(input())
maxa = max(a)
mina = min(a)

for i in range(n):
    a.sort(reverse=True)
    if maxa > 0:
        a[0] = a[0] - 1
        a[-1] = a[-1] + 1

print(max(a) - min(a))
profile
https://github.com/raincoat03

0개의 댓글