Swift랑 친해지기/programmers 풀기

[프로그래머스] 옹알이(2) (Swift)

데브킹덕 2023. 1. 9. 13:35

https://school.programmers.co.kr/learn/courses/30/lessons/133499

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

import Foundation

func solution(_ babbling:[String]) -> Int {
    let possibleWord: [String] = ["aya", "ye", "woo", "ma"] // 옹알이 가능한 단어
    var plusWord = ""  //babbling의 각 인덱스 별로 한단어씩 추가할 빈문자열
    var prePossibleWord = "" //연속해서 같은 발음 할떄 전에 옹알이 가능한 단어를 저장하는 빈문자열
    
    var result = 0 //결과값
    
    for word in babbling{
        for spell in word{
            plusWord += String(spell)
            if possibleWord.contains(plusWord) && plusWord != prePossibleWord{
                prePossibleWord = plusWord
                plusWord = ""
            }
        }
        
        if plusWord == ""{
            result += 1
        }
        else{
            plusWord = ""
        }
        prePossibleWord = ""
    }
    
    return result
}