Python으로 구현한 23305번 수강변경 문제 풀이입니다.
https://www.acmicpc.net/problem/23305
n = int(input())
data = [0] * 1000001
for i in list(map(int, input().split())) :
data[i] += 1
result = 0
for i in list(map(int, input().split())) :
if data[i] >= 1 :
data[i] -= 1
else :
result += 1
print(result)
1. 신청한 수업을 의미하는 수들을 입력받아 리스트 형태로 구성하고 반복문을 통해 data리스트의 해당 인덱스의 값을 1 증가시킨다.
2. 교환을 통해 수강하고 싶은 수업의 번호를 의미하는 수들을 입력받아 리스트 형태로 구성하고 반복문을 통해 값을 하나씩 확인한다.
3. 만약 data 리스트의 해당 인덱스의 값이 1이상일 경우 그 값을 1씩 빼준다.
4. 인덱스의 값이 0일 경우 result값을 1 증가시키고, 반복문이 종료되면 result 값을 출력한다.
'백준(Python) 풀이 > 그리디 알고리즘' 카테고리의 다른 글
백준(Python) 13238번 Bitcoin investment 풀이 (0) | 2021.12.15 |
---|---|
백준(Python) 12034번 김인천씨의 식료품가게 (Large) 풀이 (0) | 2021.12.15 |
백준(Python) 18787번 Mad Scientist 풀이 (0) | 2021.12.15 |
백준(Python) 1817번 짐 챙기는 숌 풀이 (0) | 2021.12.15 |
백준(Python) 6550번 부분 문자열 풀이 (0) | 2021.12.15 |