반응형
출처
https://programmers.co.kr/learn/courses/30/lessons/12916
문제
대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요.
입출력 예시
문제풀이1
def solution(s):
s_list = list(s)
p,y = 0, 0
for i in range(len(s_list)):
if s_list[i] == 'p' or s_list[i] == 'P':
p = p+1
elif s_list[i] == 'y' or s_list[i] == 'Y':
y = y+1
return p == y
- 단순히 for 문을 돌려서 문자가 있는지 체크만 해줌
- 시간복잡도를 고려하지 않은 풀이. 하지만 빠르게 답을 도출할 수 있었다.
문제풀이2
def solution(s):
if(s.upper().count('P')==s.upper().count('Y')):
return True
return False
- for 문을 사용하지 않고 풀이한 답안(count() 내부적인 부분은 생각하지 않음)
반응형
'컴퓨터 > 알고리즘' 카테고리의 다른 글
[프로그래머스] Lv1 자연수 뒤집어 배열로 만들기_python 문제 풀이 (0) | 2022.07.05 |
---|---|
[프로그래머스] Lv1 같은 숫자 시러_python 문제 풀이 (0) | 2022.07.04 |
[프로그래머스] Lv1 수박수박수?_python 문제 풀이 (0) | 2022.06.28 |
[프로그래머스] Lv1 서울에서 김서방 찾기_python 문제 풀이 (0) | 2022.06.27 |
[프로그래머스] Lv1 체육복_그리디 python 문제 풀이 (0) | 2022.06.26 |
댓글