본문 바로가기
Engineering WIKI/Programmers

[프로그래머스] 문자열 내 p와 y의 개수

by wonos 2022. 4. 15.
 

코딩테스트 연습 - 문자열 내 p와 y의 개수

대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를

programmers.co.kr

내 풀이

def solution(s):
    answer = True
    p_count = 0
    y_count = 0
    
    s = s.lower()
    for i in s:
        if i == "p":
            p_count += 1
        elif i == "y":
            y_count += 1
    
    if p_count != y_count:
        return False

    return True

 

다른방법 1

def numPY(s):
    # 함수를 완성하세요
    return s.lower().count('p') == s.lower().count('y')

# 아래는 테스트로 출력해 보기 위한 코드입니다.
print( numPY("pPoooyY") )
print( numPY("Pyy") )

다른방법 2

from collections import Counter
def numPY(s):
    # 함수를 완성하세요
    c = Counter(s.lower())
    return c['y'] == c['p'] 



# 아래는 테스트로 출력해 보기 위한 코드입니다.
print( numPY("pPoooyY") )
print( numPY("Pyy") )