[Swift] 백준 1316번: 그룹 단어 체커

Logan·2021년 3월 22일
1

그룹 단어 체커

문제링크

문자열에서 이미 나온 문자가 바로 앞에 붙어있지 않고 나중에 떨어져서 나오는 경우 그룹단어에 해당하지 않습니다.
(aabbbccb는 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다.)

생각해보기

  1. 이전 문자와 현재 문자를 비교한다.
  2. 이전 문자와 현재 문자가 같다면? 통과
  3. 이전 문자와 현재 문자가 다르다면?
    3-1. 문자열에 문자가 포함되어 있다면? 탈락
    3-2. 문자열에 문자가 포함되어 있지 않다면? 통과
func check(word: String) -> Int {
    var group = [Character]()
    var frontCharacter: Character = "*"
    
    for character in word {
        if group.contains(character) {
            return 0
        }
        
        if character != frontCharacter {
            group.append(frontCharacter)
            frontCharacter = character
        }
    }
    
    return 1
}
profile
iOS개발자 꿈나무

0개의 댓글