문제풀이 흐름
- 문자열을 모두 소문자로 변환
- “p”의 개수 세기
- 문자열에 등장하는 모든 “p”를 빈 문자열 “”로 치환
- 원본 문자열과 변환된 문자열의 길이 차이가 p의 개수
- 2와 같은 방식으로 y의 개수 세기
- 구한 p의 개수와 y의 개수 비교
코드 작성
1. 문자열을 모두 소문자로 변환
s = s.toLowerCase();
2. “p”의 개수 세기
문자열에서 p의 개수를 세기 위해 문자열에서 p를 모두 제거합니다. 이 때 제거된 개수, 즉 원본 문자열과 p를 제거한 문자열의 차이가 p의 개수가 됩니다.
2-A. 문자열에 등장하는 모든 “p”를 빈 문자열 “”로 치환
s.replace("p","")
2-B. 원본 문자열과 변환된 문자열의 길이 차이가 p의 개수
s = s.toLowerCase();
int ps = s.length() - s.replace("p","").length();
3. 2와 같은 방식으로 y의 개수 세기
int ys = s.length() - s.replace("y","").length();
4. 구한 p의 개수와 y의 개수 비교
return ps == ys;