• 문제 링크
2002번: 추월
입력은 총 2N+1개의 줄로 이루어져 있다. 첫 줄에는 차의 대수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 대근이가 적은 차량 번호 목록이 주어지고, N+2째 줄부터 N개의 줄에는 영식이
www.acmicpc.net
• 풀이 과정
차량별 진입 순서를 Map에 저장하고, 출구에서 나온 차량의 진입 순서를 배열에 저장한다.
만약 출구에서 나온 차량의 진입 순서가 이후에 나온 차량보다 크다면 이는 추월한 차량이므로
이때 카운트를 증가시키는 방식으로 추월한 차량의 개수를 구한다.
• 풀이 코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = Integer.parseInt(br.readLine());
Map<String, Integer> map = new HashMap<>();
for (int i = 0; i < n; i++)
map.put(br.readLine(), i);
int[] arr = new int[n];
for (int i = 0; i < n; i++)
arr[i] = map.get(br.readLine());
int cnt = 0;
for (int i = 0; i < n - 1; i++) {
for (int j = i + 1; j < n; j++) {
if (arr[i] > arr[j]) {
cnt++;
break;
}
}
}
bw.write(String.valueOf(cnt));
bw.flush();
}
}
'Problem Solving > Baekjoon' 카테고리의 다른 글
[백준] 12605 단어순서 뒤집기 - Data Structure / Java (0) | 2023.03.15 |
---|---|
[백준] 4889 안정적인 문자열 - Data Structure / Java (0) | 2023.03.14 |
[백준] 13414 수강신청 - Data Structure / Java (0) | 2023.03.12 |
[백준] 20291 파일 정리 - Data Structure / Java (0) | 2023.03.11 |
[백준] 2910 빈도 정렬 - Data Structure / Java (0) | 2023.03.10 |
댓글