문자열 내 p와 y의 개수
링크텍스트
나의 풀이
def solution(s):
p_count = 0
y_count = 0
for i in s:
if (i == "p" or i == "P"):
p_count += 1
elif (i == "y" or i == "Y"):
y_count += 1
if p_count == y_count:
return True
elif p_count == 0 and y_count == 0:
return True
else:
return False
- 문자열 s를 구성하는 알파벳들을 반복문으로 돌리고 조건문을 통해 p와 y갯수를 카운트하고 비교하여 리턴값을 반환하도록 코드를 구성하였다. 문제에 써있는 그대로 직관적으로 작성하였으나 코드가 간결하지는 않다.
다른 사람의 풀이
def numPY(s):
return s.lower().count('p') == s.lower().count('y')
- lower 함수를 통해 모두 소문자로 변환한 뒤, count 함수를 통해 집계하여 불리언 값을 리턴하는 답안이다... 충분히 생각할 수 있는 답안인데 아직 공부한 내용을 제대로 활용하지 못하는 것 같다. 문제를 푸는거에만 집중하지 말고 시간을 두고 다양한 사고를 하려고 노력해야겠다.