728x90
1. 문제
https://www.acmicpc.net/problem/2605
2. 풀이
다른 방식으로 풀어보려다 그냥 문제가 하라는 대로 따라가보니 쉽게 풀렸다.
(내 원래 순서-받은 카드 숫자)를 인덱스로 놓고 LinkedList에 add했다. 값은 내 원래순서+1이다. (문제가 1부터임)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.List;
import java.util.StringTokenizer;
public class BOJ_2605_줄세우기 {
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(in.readLine());
StringTokenizer st = new StringTokenizer(in.readLine());
List<Integer> students = new LinkedList<>();
for(int i=0;i<N;i++){
students.add(i-Integer.parseInt(st.nextToken()),i+1);
}
StringBuilder sb = new StringBuilder();
for(int i=0;i<N;i++){
sb.append(students.get(i)).append(" ");
}
System.out.println(sb);
}
}
3. 결과
'코딩테스트 > BOJ' 카테고리의 다른 글
[BOJ] 2578 빙고 - JAVA (0) | 2022.02.11 |
---|---|
[BOJ] 3053 택시기하학 - JAVA (0) | 2022.02.10 |
[BOJ] 2309 일곱난쟁이 - JAVA (0) | 2022.02.09 |
[BOJ] 2493 탑 - JAVA (0) | 2022.02.07 |
[BOJ] 5430 AC - JAVA (0) | 2022.02.07 |
댓글