문제_센서_2212
코드
import sys
sys.stdin = open('./그리디/백준/센서_송주영_11_19_1.txt')
# sys.stdin = open('./그리디/백준/센서_송주영_11_19_1.txt')
input = sys.stdin.readline
num_sensor = int(input().strip())
num_center = int(input().strip())
location = list( map( int, input().split() ))
location.sort()
print(location)
minus = []
for i in range(1,len(location)):
minus.append(location[i] - location[i-1] )
print(minus)
minus.sort(reverse = True)
print(sum(minus[num_center - 1:]))
for i in range(1, len(location)):
센서 간의 거리 차를 계산한다.
센서가 5개라면 4개의 값들이 들어갈 것이다.
minus.sort(reverse = True)
거리 차를 큰 값부터 정렬한다.
sum(minus[num_center - 1: ] ))
원본
[ 1, 3, 6, 6, 7, 9 ]
차이
[ 2, 3, 0, 1, 2 ]
차이 내림차순
[ 3, 2, 2, 1, 0 ]
sum(minus[num_center - 1: ] ))
[ 2, 2, 1, 0 ] 합 구하기
즉, 이 예시를 기준으로 한다면 3과 6에 기지국을 설치하여 그룹을 나눈다.
[1, 3 ]
거리차 합 2
[ 6, 7, 9 ]
거리차 합 3
'알고리즘 > 그리디' 카테고리의 다른 글
그리디] 11.19(일)_강의실_배정_11501 (0) | 2023.11.19 |
---|---|
그리디] 11.19(일)_주식_11501 (0) | 2023.11.19 |