Problem Solving with Algorithms

반응형

class Solution {
    public int minimumDeletions(String s) {
        int n = s.length();
        int[] aCnt = new int[n+1];
        
        for(int i = n-1; i >= 0; i--) {
            aCnt[i] = aCnt[i+1];
            if(s.charAt(i) == 'a') aCnt[i]++;
        }
        
        int delection = aCnt[0];
        int bCnt = 0;
        for(int i = 0; i < n; i++) {
            if(s.charAt(i) == 'b') bCnt++;
            delection = Math.min(delection, bCnt + aCnt[i+1]);
        }
        
        return delection;
    }
}

 

 

스택을 이용하는 다른 방법도 있음.

반응형
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band