Study/Problem Solving
[백준 / Java] 2941번: 크로아티아 알파벳 (실버5)
Pearlii
2023. 7. 25. 17:54
문제 풀이 날짜: 2023.07.26
포스트 작성일: 2023.07.26
* 학습 목적으로 작성하는 글입니다. 풀이가 정석적이지 못할 수도 있습니다.
문제 출처
백준 온라인 저지 2941번: 크로아티아 알파벳 (실버5)
키워드
문자열
풀이 접근법
- replace() 메소드를 중점적으로 활용한다.
- 여기서 replace() 할 대상을 String[] 배열에 담아 참조하는 것이 포인트이다. 이 문제에서는 크로아티아 알파벳 몇 가지가 제시되었으므로, 그것을 배열에 담아 참조하면서 문자열이 크로아티아 알파벳을 포함하는지를 검사한다.
- replace()는 문자열 단위로도 교체할 수 있으므로 크로아티아 알파벳을 어떤 문자 한 개(예: *, ! 등등)로 치환하고 전체 길이를 잰다.
코드
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
String[] keys = {"c=", "c-", "dz=", "d-", "lj", "nj", "s=", "z="};
for(int i = 0; i < keys.length; i++) {
if(input.contains(keys[i])) {
input = input.replace(keys[i], "*");
}
}
System.out.println(input.length());
}
}
문자열을 replace하여 원하는 결과를 얻는 방식은 여러문제에 응용되기 좋으니 풀이법을 잘 기억해두자.
git 링크
(git 링크 첨부)