![[BOJ] 백준_2012번_등수 매기기_C/C++](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FbckhY0%2FbtruAiJ8vHL%2FAAAAAAAAAAAAAAAAAAAAACKRdfr4nJcbGu7Egmj1ZkqUa6d1XAMbtOyMzkPqS-AT%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DJWdPDzbNj35bhE5AKywqsFVTJzk%253D)
[BOJ] 백준_2012번_등수 매기기_C/C++백준 알고리즘2022. 2. 27. 13:06
목차
문제 출처
https://www.acmicpc.net/problem/2012
2012번: 등수 매기기
첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 500,000) 둘째 줄부터 N개의 줄에 걸쳐 각 사람의 예상 등수가 순서대로 주어진다. 예상 등수는 500,000 이하의 자연수이다.
www.acmicpc.net
문제 설명
코드
//[BOJ] 2012번 등수 매기기
#include <iostream>
#include <stdlib.h>
#include <algorithm>
using namespace std;
int main()
{
int n;
long long total = 0;
cin >> n;
int* arr = new int[n];
for (int i = 0; i < n; i++)
{
cin >> arr[i];
}
sort(arr, arr + n);
for (int i = 0; i < n; i++)
{
total += abs((i + 1) - arr[i]);
}
cout << total << endl;
return 0;
}
풀이 과정
n번 등수를 입력받는다. 이후 오름차순으로 정렬한 뒤 1등 부터 n 등까지 1, 2, ... , n에서 각각 정렬된 희망등수를 빼준 값의 절대값(abs)을 total에 더해준다. 이 때 total 은 long long 자료형이여야 한다.
728x90
반응형
'백준 알고리즘' 카테고리의 다른 글
[BOJ] 백준_1931번_회의실 배정_Python3 (2) | 2023.11.25 |
---|---|
[BOJ] 백준_1541번_잃어버린 괄호_Python3 (0) | 2023.11.24 |
[BOJ] 백준_2810번_컵홀더_C/C++ (0) | 2022.02.26 |
[BOJ] 백준_16953번_A → B_C/C++ (0) | 2022.02.02 |
[BOJ] 백준_1543번_문서 검색_C/C++ (0) | 2022.01.31 |
@kdj :: Childev'note
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!