https://www.acmicpc.net/problem/10867
10867번: 중복 빼고 정렬하기
첫째 줄에 수의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다.
www.acmicpc.net
해석 및 팁
이 문제는 ArrayList에 중복여부를 판단해서 입력받은 후 Collections.sort를 통해 정렬합니다. 그리고 StringBuilder에 추가하여 출력해 주면 되는 문제입니다.
Java 코드
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Collections;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
ArrayList<Integer> list = new ArrayList<>();
int n = sc.nextInt();
for(int i = 0; i < n; i++) {
int num = sc.nextInt();
if(list.contains(num)) continue; //중복인 경우에는 continue
else list.add(num); //없으면 추가
}
Collections.sort(list);
for(int i = 0; i < list.size(); i++) {
sb.append(list.get(i)+" ");
}
System.out.println(sb);
}
}
'백준' 카테고리의 다른 글
백준 7785 회사에 있는 사람(Java) (0) | 2023.01.22 |
---|---|
백준 2822 점수 계산(Java) (0) | 2023.01.22 |
백준 2740 행렬 곱셈(Java) (1) | 2023.01.22 |
백준 11728 배열 합치기(Java) (0) | 2023.01.21 |
백준 1439 뒤집기(Java) (0) | 2023.01.21 |