
문제
프로그래머스 Level1

나의 풀이
count() 함수 사용
def solution(s):
answer = True
cntP = s.lower().count('p')
cntY = s.lower().count('y')
if(cntP == cntY):
answer = True
else:
answer = False
return answer
count() 함수는 대소문자를 구분하므로, 먼저 문자열 s를 소문자나 대문자로 일괄 변환한다.
나의 경우 lower로 소문자로 변환한 다음 찾아야 할 원소 p, y를 개별로 카운트 했다.
p와 y의 개수를 반환받아 변수에 저장한 다음 비교하여 수가 같으면 True, 다르면 False를 반환하도록 했다
다른 풀이
Collection 모듈 활용
데이터를 처리하는 여러 함수를 제공하는 모듈 Collections를 활용할 수 있다.
from collections import Counter
def solution(s):
answer = True
cntP = Counter(s.lower())['p']
cntY = Counter(s.lower())['y']
if(cntP == cntY):
answer = True
else:
answer = False
return answer
Counter 생성자 사용 방법
Counter 생성자에 위와 같이 문자열 s를 넘기면, 각 문자가 문자열에서 몇 번씩 나타나는지 알려주는 객체를 반환
>>> Counter("hello world") # 인자 입력 Counter({'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1}) # 결과
인자를 중복된 값이 들어간 배열로 넘기면, 각 원소가 몇번씩 저장돼 있는지 알려주는 객체를 반환
>>> Counter(["hi", "hey", "hi", "hi", "hello", "hey"]) # 인자 입력 Counter({'hi': 3, 'hey': 2, 'hello': 1}) # 결과
오늘의 노트

딕셔너리 자료형을 이용할까 생각했는데, count()를 사용하는게 가장 간단하다고 생각해서
count 함수를 활용했다. Collections 모듈과 같이 파이썬에는 문자열 데이터를 다루는 강력한 모듈이 많으니까..!
사용하는 방법을 알아두도록 하자.
'TIL' 카테고리의 다른 글
99클럽 코테 스터디 4일차 TIL + JadenCase 문자열 만들기 (0) | 2024.07.25 |
---|---|
99클럽 코테 스터디 2일차 TIL + 배열의 평균 (2) | 2024.07.23 |
99클럽 코테 스터디 1일차 TIL + 숫자 거꾸로(역순) 출력 (3) | 2024.07.22 |

문제
프로그래머스 Level1

나의 풀이
count() 함수 사용
def solution(s):
answer = True
cntP = s.lower().count('p')
cntY = s.lower().count('y')
if(cntP == cntY):
answer = True
else:
answer = False
return answer
count() 함수는 대소문자를 구분하므로, 먼저 문자열 s를 소문자나 대문자로 일괄 변환한다.
나의 경우 lower로 소문자로 변환한 다음 찾아야 할 원소 p, y를 개별로 카운트 했다.
p와 y의 개수를 반환받아 변수에 저장한 다음 비교하여 수가 같으면 True, 다르면 False를 반환하도록 했다
다른 풀이
Collection 모듈 활용
데이터를 처리하는 여러 함수를 제공하는 모듈 Collections를 활용할 수 있다.
from collections import Counter
def solution(s):
answer = True
cntP = Counter(s.lower())['p']
cntY = Counter(s.lower())['y']
if(cntP == cntY):
answer = True
else:
answer = False
return answer
Counter 생성자 사용 방법
Counter 생성자에 위와 같이 문자열 s를 넘기면, 각 문자가 문자열에서 몇 번씩 나타나는지 알려주는 객체를 반환
>>> Counter("hello world") # 인자 입력 Counter({'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1}) # 결과
인자를 중복된 값이 들어간 배열로 넘기면, 각 원소가 몇번씩 저장돼 있는지 알려주는 객체를 반환
>>> Counter(["hi", "hey", "hi", "hi", "hello", "hey"]) # 인자 입력 Counter({'hi': 3, 'hey': 2, 'hello': 1}) # 결과
오늘의 노트

딕셔너리 자료형을 이용할까 생각했는데, count()를 사용하는게 가장 간단하다고 생각해서
count 함수를 활용했다. Collections 모듈과 같이 파이썬에는 문자열 데이터를 다루는 강력한 모듈이 많으니까..!
사용하는 방법을 알아두도록 하자.
'TIL' 카테고리의 다른 글
99클럽 코테 스터디 4일차 TIL + JadenCase 문자열 만들기 (0) | 2024.07.25 |
---|---|
99클럽 코테 스터디 2일차 TIL + 배열의 평균 (2) | 2024.07.23 |
99클럽 코테 스터디 1일차 TIL + 숫자 거꾸로(역순) 출력 (3) | 2024.07.22 |