[백준] 2941번 - String.replace() (java)

팥빵·2025년 5월 27일

Baekjoon

목록 보기
17/49

>>문제 바로가기<<

문자열을 입력 받고, 문제에서 제시된 문자가 몇번이나 나왔는지를 세는 문제이다.

단순 if문 처리를 하면 꽤 귀찮긴 해도 어렵지 않게 풀 수 있긴 하지만, 이 게시물에선 메소드 하나를 소개하고자 한다.


String.replace(char, char);

해당 메소드의 기능은 특정 문자 또는 문자열을 다른 문자나 문자열로 바꿔준다.

첫번째 char에는 '바꿀 대상',
두번째 char는 '바꿔질 문장' 이 적혀진다.

String s = "banana"
String result = s.replace('a', 'o');
System.out.println(result);
// bonono 출력

예시로 확인하는것이 훨씬 빠를것이다.

따라서, 위 정보를 바탕으로 설계한 코드는 아래와 같다.


import java.io.*;

class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        
        String s = br.readLine();
        s = s.replace("c=", "*");
        s = s.replace("c-", "*");
        s = s.replace("dz=", "*");
        s = s.replace("d-", "*");
        s = s.replace("lj", "*");
        s = s.replace("nj", "*");
        s = s.replace("s=", "*");
        s = s.replace("z=", "*");
        // 입력값은 모두 크로아티아 문자가 주어지므로
        // 이러한 풀이가 가능
        
        System.out.println(s.length());
        br.close();
    }
}

맞았습니다!!

profile
반갑습니다

0개의 댓글