반응형
안녕하세요. 개발 중인 정주입니다.
오늘은 "프로그래머스(Lv.2) - 짝지어 제거하기" 문제를 풀었습니다.
목차
Github
문제 링크
풀이
이번 문제는 스택을 이용해 푸링가 가능합니다.
한 글자씩 체크를 하면서 top과 똑같으면 pop을, 아니면 push를 합니다.
마지막에 스택이 비어있다면 1을 아니면 0을 반환하면 됩니다.
전체 코드
import Foundation
func solution(_ s:String) -> Int{
var stack: [Character] = []
for letter in s {
if let top = stack.last, top == letter {
stack.popLast()
} else {
stack.append(letter)
}
}
return stack.isEmpty ? 1 : 0
}
아직은 초보 개발자입니다.
더 효율적인 코드 훈수 환영합니다!
공감과 댓글 부탁드립니다.
반응형