랄라
LV1 문자열 내 p와 y의 개수 - JAVA 본문
코딩테스트 연습 - 문자열 내 p와 y의 개수 | 프로그래머스 스쿨
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제 설명
- 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요.
- 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다.
- 예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다.
class Solution {
boolean solution(String s) {
boolean answer = true;
String lower = s.toLowerCase();//전체 소문자로 변환
int pval = 0;
int yval = 0;
for (int i=0; i<s.length(); i++){
String sub = lower.substring(i,i+1);
if (sub.equals("p")){ // 문자열이어서 equals() 로 동등비교
pval += 1;
}else if(sub.equals("y")){
yval += 1;
}
}
if(pval == yval){
answer = true;
}else{
answer = false;
}
return answer;
}
}
대소문자를 구분하지 않고, "p"와 "y"값을 비교한다고 해 전체 문자열을 소문자로 변환하였다.
이후, 문자열의 각 문자를 for문을 사용하여 substring으로 가져왔다.
문제에서 요구하는 "p"의 값과 "y"의 값을 카운팅할 수 있도록 if문을 추가하여 값을 더하고, 반복문 종료 후 최종 개수를 비교하여 answer값을 구하였다.
'스터디 > 코딩 테스트(프로그래머스)' 카테고리의 다른 글
| LV1 자연수 뒤집어 배열로 만들기 - JAVA (1) | 2024.12.02 |
|---|---|
| LV1 경기도에 위치한 식품창고 목록 출력하기 - SQL (0) | 2024.12.02 |
| LV1 문자열 다루기 기본 - JAVA (1) | 2024.11.27 |
| LV1 두 정수 사이의 합 - JAVA (1) | 2024.11.27 |
| LV1 문자열을 정수로 바꾸기 - JAVA (1) | 2024.11.27 |