https://www.acmicpc.net/problem/1015
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args)throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
// 배열의 크기 N
int n = Integer.parseInt(br.readLine());
// 배열 A의 원소가 0번부터 차례대로 주어진다.
int[] arr = new int[n];
int[] result = new int[n];
st = new StringTokenizer(br.readLine());
int min = Integer.MAX_VALUE;
int max = Integer.MIN_VALUE;
for(int i = 0; i < n; i ++) {
arr[i] = Integer.parseInt(st.nextToken());
min = Math.min(min, arr[i]);
max = Math.max(max, arr[i]);
}
int k = 0;
// 첫째 줄에 비 내림차순으로 만드는 수열 P를 출력한다.
for(int i = min; i <= max; i ++) {
for(int j = 0; j < arr.length; j ++) {
if(i == arr[j]) {
result[j] = k ++;
}
}
}
StringBuilder sb = new StringBuilder();
for(int i = 0; i < n; i ++) {
sb.append(result[i]).append(" ");
}
System.out.println(sb);
}
}
n = int(input())
result = [0] * n
arr = list(map(int, (input().split(' '))))
k = 0
for i in range(min(arr), max(arr) + 1):
for j in range(len(arr)):
if i == arr[j]:
result[j] = k
k += 1
for i in range(n):
print(result[i], end=" ")
'자료구조 & 알고리즘 관련 > 코딩테스트' 카테고리의 다른 글
Longest Consecutive Sequence (0) | 2023.02.01 |
---|---|
Daily Temperatures (0) | 2023.01.30 |
유기농 배추 (0) | 2023.01.29 |
통계학 (0) | 2023.01.28 |
소트인사이드 (0) | 2023.01.28 |