킹솔이
[백준/Python] 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등 먹었다.. ㅋㅋ 숏코딩이 무조건 좋은 건 아니지만 기분이 좋군ㅋ
'Algorithm' 카테고리의 다른 글
[백준/Python] 1202 보석 도둑 (0) | 2021.01.08 |
---|---|
[백준/Python] 2606 바이러스 (0) | 2021.01.08 |
[프로그래머스/C++] 서머코딩/윈터코딩(~2018) 쿠키 구입 (0) | 2020.03.09 |
[프로그래머스/C++] 서머코딩/윈터코딩(~2018) 방문길이 (0) | 2020.02.19 |
[백준/C++] 14503 로봇 청소기 (0) | 2020.02.04 |