[99클럽 코테 스터디 1일차 TIL] 프로그래머스 문자열 내 p와 y의 개수

말하는 감자·2024년 10월 28일
0
post-thumbnail

99클럽 코테 스터디 1일차 TIL

💙 JAVA 비기너

📌 오늘의 학습 키워드

  • 문자열

📌 공부한 내용

📍 오늘의 문제

사실 이 문제는 이미 기존에 풀어봤고 벨로그에도 이미 작성한 적이 있는 문제이다.
🎈 작성 내용 보러가기

약 2년만에 본 문제라서 전에 "문제를 푼다"보다는 "어떻게 풀어야 잘 풀어낸것일까"에 집중하여 코드를 작성했다.

📍 작성 코드

class Solution {
    boolean solution(String s) {

        s = s.toLowerCase();
        int count = 0;
        
        for (int i=0; i<s.length(); i++) {
            if (s.charAt(i) == 'p') count++;
            else if (s.charAt(i) == 'y') count--;
        }

        return count == 0;
    }
}

📌 오늘의 회고

먼저 String.toLowerCase()함수를 통해 s문자열의 모든 문자를 소문자로 통일시켰다. 그래야 대소문자를 구분하지 않고 p와 y의 개수를 구할 수 있기 때문이다.

저번에는 p와 y의 개수를 세는 변수를 각각 두었다면 이번에는 변수 하나로 할 수 있지 않을까? 변수를 하나라도 덜 쓴다면 메모리를 덜 차지할 수 있을 것 같았다. 그래서 count라는 하나의 변수로 p와 y의 개수 차를 계산할 수 있도록 하였다.

하다보니 저번의 코드와 비슷하다고 느꼈다. 정확히는 저번에 "아 이렇게 하면 더 좋은 코드가 될 수 있구나"라고 느꼈던 다른 사람의 풀이와 동일해졌다. 이미 본 코드라고는 하지만 2년동안 잊고 있다가 다시 푸는 건데 이렇게 동일해졌다는 게 신기하다. 그때의 내가 놓쳤던 부분을 2년 후의 내가 잡은 느낌? 늘 제자리 걸음이라고 생각했는데 나름 성장했구나 싶었다.

profile
나는 말하는 감자다

0개의 댓글