https://www.acmicpc.net/problem/18870
18870번: 좌표 압축
수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌
www.acmicpc.net
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> x(n);
for (int i = 0; i < n; i++) {
cin >> x[i];
}
vector<int> sorted_x = x;
sort(sorted_x.begin(), sorted_x.end());
sorted_x.erase(unique(sorted_x.begin(), sorted_x.end()), sorted_x.end());
for (int i = 0; i < n; i++) {
int compressed_x = lower_bound(sorted_x.begin(), sorted_x.end(), x[i]) - sorted_x.begin();
cout << compressed_x << ' ';
}
return 0;
}
'Coding > 백준 온라인 저지 (Baekjoon Online Judge)' 카테고리의 다른 글
백준 온라인 저지(Baekjoon Online Judge) - 2745 : 진법 변환 (0) | 2023.04.12 |
---|---|
백준 온라인 저지(Baekjoon Online Judge) - 27323 : 직사각형 (0) | 2023.04.12 |
백준 온라인 저지(Baekjoon Online Judge) - 10814 : 나이순 정렬 (0) | 2023.04.12 |
백준 온라인 저지(Baekjoon Online Judge) - 12100 : 2048 (Easy) (0) | 2023.04.12 |
백준 온라인 저지(Baekjoon Online Judge) - 10798 : 세로읽기 (0) | 2023.04.12 |