코테/백준
[백준/JAVA] 10431번: 줄세우기
imname1am
2024. 6. 12. 18:23
반응형
📖 문제
https://www.acmicpc.net/problem/10431
💡 풀이 방식
• 시뮬레이션
1. TC 번호와 20개의 숫자를 입력받는다.
2. 각 학생들에 대해 본인 앞에 있는 본인보다 키 큰 사람 수를 구한다.
⇒ 시간 복잡도 : O(TC * N^2)
🔺 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
import java.util.*;
import java.io.*;
public class Main {
static int T, P;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
StringBuilder sb = new StringBuilder();
P = Integer.parseInt(br.readLine());
while(P --> 0) {
st = new StringTokenizer(br.readLine(), " ");
int[] arr = new int[20];
for(int x = 0 ; x < 21 ; x++) {
if(x == 0)
T = Integer.parseInt(st.nextToken());
else
arr[x-1] = Integer.parseInt(st.nextToken());
}
int cnt = 0; // 본인 앞에 있는 키 큰 사람 수
for(int i = 0 ; i < 20 ; i++) {
for(int j = 0 ; j < i ; j++) {
if(arr[j] > arr[i]) // 자기 앞에 자기보다 키 큰 학생이 있는 경우
cnt++;
}
}
sb.append(T + " " + cnt).append("\n");
}
System.out.println(sb.toString());
}
}
|
cs |
➕ 다른 풀이 방식
헉 리스트 활용해서 내가 풀려고 했던 방식처럼 하셨다.
백준 10431 줄세우기 (Java)
1. 문제 링크 10431번: 줄세우기 초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여
daon-programming.tistory.com
💦 어려웠던 점
- 리스트로 직접 정렬하면서 갯수 구할 생각을 했다...하하ㅏ하 (25퍼만 맞음)
- 초간단 문제를 헤매다니...ㅎㅎㅎㅎ
1회독 | 2회독 | 3회독 | 4회독 | 5회독 |
V |
(참고)
[백준]JAVA - 10431번: 줄세우기
10431번: 줄세우기 (acmicpc.net) 10431번: 줄세우기 초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다
sookr5416.tistory.com
반응형