알고리즘 풀이/프로그래머스

[Level1] 문자열 내 p와 y의 개수

mhko411 2021. 1. 20. 21:40
728x90

문제

문자열이 입력되었을 때 p와 y의 개수를 비교한다.

만약 두 문자의 개수가 같으면 True, 다르면 False를 출력한다.

이때 대소문자를 구분하지 않으며 p와 y가 하나도 없는 경우는 항상 True를 출력한다.

 

입력

"pPoooyY"

 

출력

True


1. p와 y의 개수를 count할 변수 2개를 생성한다. (cnt_p, cnt_y)

2. 문자열의 첫 번째 인덱스부터 탐색하여 p or P일 때는 cnt_p를 증가, y or Y일 때는 cnt_y를 증가시킨다.

3. 탐색이 종료된다면 cnt_p와 cnt_y를 비교하여 같으면 True, 다르면 False를 반환한다.

 

def solution(s):
    answer = True
    
    cnt_p=0
    cnt_y=0
    for idx in range(len(s)):
        if s[idx]=='p' or s[idx]=='P':
            cnt_p+=1
        elif s[idx]=='y'or s[idx]=='Y':
            cnt_y+=1
    
    if cnt_p != cnt_y:
        answer=False
    return answer