백준 2941 크로아티아 알파벳

Eunkyung·2021년 11월 2일
0

Algorithm

목록 보기
6/30

https://www.acmicpc.net/problem/2941

문제해결

입력으로 받은 문자열에 크로아티아 알파벳이 포함되어 있으면 개수 출력
문자열의 contains()와 replaceAll() 메소드를 사용하여 해결하였다. contains()의 리턴값은 boolean으로 포함되어 있으면 true, 그렇지 않으면 false를 반환한다.

  1. 입력으로 문자열을 받는다.
  2. 크로아티아 알파벳을 배열로 생성한다.
  3. 입력받은 문자열에 크로아티아 알파벳이 포함되어 있으면 조건문 생성 -> 첫 번째 입력값에 대한 개수는 3개("lj", "s=", "nj")
  4. 크로아티아 알파벳인 경우 0으로 변경하여 입력받은 문자열의 길이 출력

소스코드


import java.util.Scanner;

public class b2941 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String input = sc.next(); // 문자열 입력받기
        String[] arr = {"c=", "c-", "dz=", "d-", "lj", "nj", "s=", "z="}; // 크로아티아 알파벳 배열 생성
        for (int i = 0; i < arr.length; i++) { // 배열 길이만큼 반복
            if (input.contains(arr[i])) { // 문자열에 크로아티아 알파벳이 포함되어 있으면 return boolean
                input = input.replaceAll(arr[i], "0"); // 해당 문자를 0으로 변경
            }
        }
        System.out.println(input.length());
    }
}
profile
꾸준히 하자

0개의 댓글