들어간 차가 순서대로 나오는지 확인하는 문제입니다!
들어간 순서대로 나와야한다는 것을 보면 바로 Queue
가 떠올라서 Queue
를 사용해서 문제를 풀었습니다.
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
// 들어간 차
Queue<String> in = new LinkedList<>();
for(int i=0; i<N; i++) {
in.add(br.readLine());
}
// 나온 차
Queue<String> out = new LinkedList<>();
for(int i=0; i<N; i++) {
out.add(br.readLine());
}
int answer = 0;
while(!out.isEmpty()) {
String outCar = out.poll();
if(!in.peek().equals(outCar)) {
answer++;
in.remove(outCar);
} else in.poll();
}
System.out.println(answer);
br.close();
}
}