알고리즘

[BOJ2671/Java]잠수함식별

IT 참다랑어 2023. 9. 6. 09:49

문제 요약

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

 

2671번: 잠수함식별

입력에 들어있는 스트링을 읽고, 이것이 잠수함의 엔진소리를 나타내는 스트링인지 아니면 그냥 물속의 잡음인지를 판정한 후, 잠수함의 엔진 소리에 해당하는 스트링이면 "SUBMARINE"을 출력하고

www.acmicpc.net

해당 문제는 정규표현식을 적용해(문제에서의 표현은 조금 다르긴 함) 입력된 문자열이 잠수함 패턴을 가지고 있는지를 확인하는 문제이다. 정규표현식은 볼 때마다 헷갈리는 것 같다..

 

입/출력

입출력은 간단하다 스트링 1개, 출력도 "SUBMARINE"이나 "NOISE" 하나만 출력하면 된다.

즉, 중요한 것은 정규표현식을 알고있느냐..

 

접근방식

정규표현식을 잘 알고 있다면 끝!

 

구현 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str = br.readLine();
		if(str.matches("(100+1+|01)+")) {
			System.out.println("SUBMARINE");
		}
		else {
			System.out.println("NOISE");
		}
	}

}