MapleStory Finger Point

[BOJ] #2012 - 등수 매기기

2021. 6. 25. 14:08Problem Solving/Online Judge

 

2012번: 등수 매기기

첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 500,000) 둘째 줄부터 N개의 줄에 걸쳐 각 사람의 예상 등수가 순서대로 주어진다. 예상 등수는 500,000 이하의 자연수이다.

www.acmicpc.net

 

 

** 문제 유형

  • 그리디

 

** 풀이

  1. 예상 등수와 실제 등수의 차이를 최소화해야 함
  2. 그 방법으로 예상된 등수를 오름차순으로 정렬하면 됨

 

n = int(input())

array = [] # 예상 등수
answer = 0 # 불만도의 합

for _ in range(n):
    array.append(int(input()))

array.sort() # 오름차순 정렬 수행

for i in range(1, n + 1):
    answer += abs(i - array[i - 1])

print(answer)

 

 

 

'Problem Solving > Online Judge' 카테고리의 다른 글

[BOJ] #9663 - N-Queen  (0) 2021.06.29
[BOJ] #1092 - 배  (0) 2021.06.25
[BOJ] #1439 - 뒤집기  (0) 2021.06.25
[BOJ] #5585 - 거스름돈  (0) 2021.06.25
[BOJ] #11053 - 가장 긴 증가하는 부분 수열  (0) 2021.06.22