문제
민규와 친구들은 바로 옆에 붙어있는 두 빌라, 알파빌과 베타빌에 살고 있다.
이 두 빌라 중 알파빌은 싼값에 좋은 빌라라서 너무 인기가 많아 입주하려는 사람들이 줄을 선다.
민규의 친구들 역시 대기 번호를 받아 알파빌의 대기 명단에 적혀있다.
알파빌 입주에 실패한 친구들은 어쩔 수 없이 조금 더 비싼 베타빌에 들어가게 될 것이다.
이를 안타까워한 민규는 더 많은 친구를 알파빌에 입주시키기 위해 집주인 몰래 대기 명단을 바꾸려고 한다.
대기 명단에는 입주하려는 사람들의 대기 번호가 입주하는 순서대로 왼쪽에서 오른쪽으로 적혀 있으며, 대기 번호는
민규는 한 번 명단을 바꿀 때 번호 두 개를 선택해서 서로 위치를 교환할 수 있다.
대기 명단을 너무 많이 바꾸면 집주인이 눈치를 챌 수 있기 때문에, 민규는 가능한 한 최소한으로 명단을 바꾸려고 한다.
민규의 모든 친구가 친구가 아닌 사람들보다 먼저 입주하도록 명단을 바꿀 때, 최소 교환 횟수를 출력하자.
풀이
n,m = map(int,input().split())
number = list(map(int,input().split()))
f = list(map(int,input().split()))
count = 0
for num in number[:m]:
if num not in f:
count+=1
print(count)
728x90
'알고리즘 풀이' 카테고리의 다른 글
Baekjoon_21736 (0) | 2023.09.17 |
---|---|
Baekjoon_인기 투표 (1) | 2023.09.16 |
Goorm_연결 요소하기 (1) | 2023.09.08 |
Goorm_대체 경로 (0) | 2023.09.07 |
Goorm_중첩 점 (0) | 2023.09.06 |