반응형
입력 & 출력
문제는 링크에서 확인 바랍니다
풀이
스택을 활용하는 문제다
문제에서는 중복된 인형의 수를 물었기에 뽑은 인형들을 출력할 필요는 없다
스택에 넣기 전 같은 인형일 경우 총합에 2를 더하고 다른 인형일 경우 그대로 스택에 인형을 넣어주자
배열에서 뽑아오는 인형이 0 일 경우 다음 배열로 넘기기 위해 반복문을 사용한다
Swift 전체 코드
var list = board
var stack : [Int] = [0]
var count = 0
for i in moves {
for y in 0..<list.count {
if list[y][i - 1] != 0 {
if stack.isEmpty {
stack.append(list[y][i-1])
break
}
else {
if stack.last! != list[y][i-1] {
stack.append(list[y][i-1])
} else {
count += 2
stack.removeLast()
}
list[y][i-1] = 0
break
}
}
}
}
return count
반응형
'개발 > 알고리즘' 카테고리의 다른 글
[프로그래머스] 2020 Kakao Blind Recruitment - 문자열 압축 (0) | 2021.04.02 |
---|---|
[프로그래머스] 두 개 뽑아서 더하기 (0) | 2021.04.01 |
[프로그래머스] 스킬트리 (0) | 2021.04.01 |
[프로그래머스] 스택/큐 - 기능개발 (0) | 2021.04.01 |
[프로그래머스] 멀쩡한 사각형 (0) | 2021.04.01 |