Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- API명세서
- 날씨API
- 네이티브애플리케이션
- 99클럽
- SQL
- 참조변수타입변환
- 배열탐색
- 4A피드백
- staging_area
- 루트사용자
- ChatGPT
- 제너릭메서드
- openapi
- 재귀적사고
- SQ3R
- 스프링
- 스레드동기화
- 자바
- 백준
- Spring
- Java
- string메서드
- 성장형마인드셋
- 향상된for문
- API
- 동전교환알고리즘
- 코딩테스트
- 파일사용권한
- 프로그래머스
- 프로젝트
Archives
- Today
- Total
개발 공부용
[프로그래머스] 연습문제 - 문자열 내 p와 y의 개수 본문
문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/12916?language=python3
문제 설명
대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다.
제한사항
문자열 s의 길이 : 50 이하의 자연수문자열 s는 알파벳으로만 이루어져 있습니다.
조건
1. 대문자와 소문자가 섞여있는 문자열 s
2. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return
3. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴
4. 대소문자 구분 X
풀이 방법
1. 대문자로 문자열 통일 -> string.upper() 사용
2. 문자열을 한 글자씩 리스트로
3. 루프 돌아서 P와 Y의 개수 확인
4. 개수가 같으면 True 리턴, 다르면 False 리턴
작성 코드
def solution(s):
upperS = s.upper() # 1
listS = list(upperS) # 2
yCount = 0 # Y 개수
pCount = 0 # P 개수
for i in listS : # 3
if (i=='Y') :
yCount+=1;
elif (i=='P') :
pCount+=1;
else : continue
if (yCount==pCount) : # 4
return True
else :
return False
결과
연습문제 카테고리의 난이도 Lv.1 문제.
연습문제답게 쉬웠고 금방 풀었다. 그래서 다른 문제도 한 개 더 풀었다.
주로 자바를 쓰다 보니 파이썬을 많이 잊어버렸는데 코테 준비하면서 조금씩 기억을 살려낼 예정.
'코딩 테스트 > 99클럽 TIL' 카테고리의 다른 글
[백준] 27160 - 할리갈리 (0) | 2025.01.20 |
---|---|
[백준] 10798 - 세로읽기 (0) | 2025.01.18 |
[백준] 11945 - 뜨거운 붕어빵 (0) | 2025.01.17 |
[백준] 2675 - 문자열 반복 (0) | 2025.01.16 |
[백준] 11719 - 그대로 출력하기 (0) | 2025.01.15 |