터널에 들어간 순서와 나온 순서가 같아야 한다. 즉 추월을 해서는 안된다. 들어간 순서와 나온 순서를 알고 있을 때 반드시 추월한 차량의 수를 구하는 문제
근데 이 접근 방법은 틀리는데 정확한 이유를 모르겠습니다. 틀린 논리를 찾으면 이유도 추가하겠습니다.
import java.io.*;
import java.util.*;
class baek__2002 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
HashMap<String, Integer> map = new HashMap<>();
for (int i = 0; i < n; i++) {
map.put(br.readLine(), i);
}
String[] out = new String[n];
int pass = 0;
for (int i = 0; i < n; i++) {
out[i] = br.readLine();
}
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
if (map.get(out[i]) > map.get(out[j])) {
pass++;
break;
}
}
}
System.out.print(pass);
}
}