문제

풀이
카운팅 사용하기
만약, 입력 값으로 2,2,4,5,1,2,3 이라고 주어졌을 때,
입력 값이 배열의 인덱스가 되고, 카운팅 즉 1씩 더하는 것이다.
이렇게 되면 arr = { 0,1,2,1,1,1 } 이 만들어진다.
그 후 for 문을 통해 해당 배열의 크기 만큼 반복을 해주며
그 반복문 안에서 다시 반복문 즉, 이중 반복문을 통해 값을 출력해 낸다면,
1,2,2,3,4,5 라는 출력 값이 만들어 진다.
코드
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
PrintWriter pw = new PrintWriter(System.out);
int N = Integer.parseInt(br.readLine());
int[] arr = new int[10001];
for(int i=0; i<N; i++){
int A = Integer.parseInt(br.readLine());
arr[A]++;
}
for(int i=1; i<10001; i++){
for(int k=0; k<arr[i]; k++ ){
pw.println(i);
}
}
pw.flush();
pw.close();
br.close();
}
}
'Algorithm' 카테고리의 다른 글
| [백준] 1260. DFS와 BFS - JAVA (0) | 2025.09.08 |
|---|---|
| [백준] 1966. 프린터 큐 - JAVA (0) | 2025.09.01 |
| [백준] 1676. 팩토리얼 0의 개수 - JAVA (0) | 2025.08.20 |
| [백준] 2751. 수 정렬하기2 - JAVA (0) | 2025.08.18 |
| [백준] 1929. 소수 구하기 - JAVA (0) | 2025.08.11 |