Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

킹솔이

[백준/Python] 2891 카약과 강풍 본문

Algorithm

[백준/Python] 2891 카약과 강풍

킹솔이 2021. 1. 6. 15:49

www.acmicpc.net/problem/2891

 

2891번: 카약과 강풍

첫째 줄에 팀의 수 N, 카약이 손상된 팀의 수 S, 카약을 하나 더 가져온 팀의 수 R이 주어진다. (2 ≤ N ≤ 10, 1 ≤ S, R ≤ N) 둘째 줄에는 카약이 손상된 팀의 번호가 주어진다. 팀 번호는 중복되지 않

www.acmicpc.net

N,S,R = map(int, input().split())
#팀 수는 필요 없어서 덮어썼다
S = list(map(int, input().split())) # 카약이 손상된 팀 번호
R = list(map(int, input().split())) # 카약이 남는 팀 번호

result = 0 # 출발하지 못하는 팀 수

for i in S:
    if i-1 in R:
        R.remove(i-1)
    elif i+1 in R:
            R.remove(i+1)
    else:
        result+=1
        
print(result)

구해야 하는 값 : 출발하지 못하는 팀 수

출발하지 못하는 팀은 무조건 카약이 손상된 팀 중에 있기 때문에 손상된 팀 번호 리스트를 검사한다.

카약이 손상된 팀 앞, 뒤의 팀이 카약이 남는 팀 리스트에 포함되어 있으면 카약을 빌려 출발할 수 있고, 남는 팀 리스트에서 해당 팀을 삭제한다.

앞뒤로 검사해서 카약을 빌릴 팀이 없다면 result를 증가시킨다. 

 


 

메모리랑 시간을 신경 안 쓰고 풀었는데 숏코딩 1등 먹었다.. ㅋㅋ 숏코딩이 무조건 좋은 건 아니지만 기분이 좋군ㅋ