반응형
문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/120891
문제
머쓱이는 친구들과 369게임을 하고 있습니다. 369게임은 1부터 숫자를 하나씩 대며 3, 6, 9가 들어가는 숫자는 숫자 대신 3, 6, 9의 개수만큼 박수를 치는 게임입니다. 머쓱이가 말해야하는 숫자 order
가 매개변수로 주어질 때, 머쓱이가 쳐야할 박수 횟수를 return 하도록 solution 함수를 완성해보세요.
포인트
문자열 처리: 숫자를 문자열로 변환하여 각 문자를 살펴봄으로써 특정 조건에 맞는 문자의 수를 셀 수 있습니다.
간단한 조건 검사: 특정 문자('3', '6', '9')가 몇 번 등장하는지 확인하여, 그 횟수를 결과로 반환합니다.
내 답안
def solution(order):
# 반환할 결과를 저장할 변수
answer = 0
# 주어진 숫자를 문자열로 변환
str_order = str(order)
# 문자열의 각 문자를 확인
for i in range(len(str_order)):
# 문자가 '3', '6', '9' 중 하나인 경우
if str_order[i] in ['3', '6', '9']:
answer += 1 # 박수 횟수를 증가
return answer
남의 풀이
def solution(order):
answer = 0
order = str(order)
return order.count('3') + order.count('6') + order.count('9')
결론 및 느낀점
이 문제를 통해 문자열 내에서 특정 조건에 해당하는 문자의 개수를 셀 수 있는 방법을 배웠습니다. Python의 count
함수를 사용하면 매우 간단하게 특정 문자의 개수를 셀 수 있어 코드가 훨씬 간결해집니다. 항상 여러 방법을 시도해보고, 더 효율적인 코드를 고민하는 것이 좋다는 것을 다시 한번 깨닫게 되었습니다.
반응형
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스 / Python] 소인수분해 (0) | 2025.05.31 |
---|---|
[프로그래머스 / Python] 합성수 찾기 (0) | 2025.05.31 |
[프로그래머스 / Python] 분수의 덧셈 (0) | 2025.05.31 |
[프로그래머스 / PCCP 기출문제 3번 / Python] 충돌위험 찾기 (0) | 2025.05.31 |
[프로그래머스 / PCCP 기출문제 2번 / Python] 퍼즐 게임 챌린지 (0) | 2025.05.31 |