반응형
- 첫 풀이 및 정답풀이
문제의 핵심은 하나의 문자열에 존재하는 p와 y의 개수에 따라 리턴 값을 다르게 해 주면 된다. 문제에서는 길게 설명하고 있지만, p와 y의 개수가 같으면 True를 리턴하고(p와 y가 모두 0개일 때 역시 같은 경우.) 개수가 다르면 False를 리턴하면 된다. 또한 문제에서 대소문자의 구분이 없기 때문에 문자열에 존재하는 알파벳을 대문자 또는 소문자로 모두 바꾸고 풀이를 진행하였다.
class Solution {
boolean solution(String s) {
boolean answer = true;
// 1. 문자열 s를 모두 소문자로 치환한다.
String str = s.toLowerCase();
// 2. p와 y의 개수를 저장할 변수.
int cnt_p = 0, cnt_y = 0;
// 3. 치환한 str을 탐색하며 p와 y의 개수를 카운팅.
for(int i =0;i<str.length();i++) {
if(str.charAt(i) == 'p') cnt_p++;
else if(str.charAt(i) == 'y') cnt_y++;
}
// 4. p와 y의 개수가 같으면 True, 같지 않으면 False.
if(cnt_p == cnt_y) return answer;
else return false;
}
}
반응형