Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

ol-rlo-zl

[프로그래머스 lv0, lv2] 옹알이(1), 옹알이(2) - 파이썬(Python) 본문

Programmers(Python)

[프로그래머스 lv0, lv2] 옹알이(1), 옹알이(2) - 파이썬(Python)

ol-rlo-zl 2023. 4. 10. 13:22

문제

프로그래머스 lv0 - 옹알이(1)

프로그래머스 lv2 - 옹알이(2)

 

풀이 - 옹알이 (1)

# SOL 1
def solution(babbling):
    cnt = 0
    for b in babbling:
        for w in ["aya", "ye", "woo", "ma"]:
            if w in b: # 가능한 발음이 있다면
                b = b.replace(w,' ',1) # 1번만 repeat
        if len(b.strip()) == 0:
            cnt += 1
    return cnt

# SOL 2
def solution(babbling):
    cnt = 0
    for b in babbling:
        for w in ["aya", "ye", "woo", "ma"]:
            if w*2 not in b: # 가능한 발음이 연속되지 않는다면
                b = b.replace(w,' ', 1) # 1번만 repeat
        if len(b.strip()) == 0:
            cnt += 1
    return cnt
    
 # SOL 3
 def solution(babbling):
    result = 0
    for bab in babbling:
        words = ["aya", "ye", "woo", "ma"]
        tmp = ''
        cnt = 0
        for b in bab:
            tmp += b
            if tmp in words:
                words.remove(tmp)
                tmp = ''
                cnt += 1
        if len(tmp) == 0 and cnt > 0:
            result += 1
    return result

풀이 - 옹알이 (2)

def solution(babbling):
    cnt = 0
    for b in babbling:
        for w in ["aya", "ye", "woo", "ma"]:
            if w*2 not in b:
                b = b.replace(w,' ') # 횟수 제한없이 가능한 만큼 repeat
        if len(b.strip()) == 0:
            cnt += 1
    return cnt