https://www.acmicpc.net/problem/9996
1. 아이디어
String의 startsWith, endsWith 메서드를 활용하면 간단하게 패턴이 일치하는지 확인할 수 있다.
2. 문제풀이
패턴 매칭을 할 때 접두사와 접미사 사이에 공백 또는 문자나 문자열이 와야 일치하는 파일 이름이어서 파일 이름이 접두사 길이와 접미사 길이의 합보다 길거나 같아야 한다는 점에만 주의하면 간단하게 해결할 수 있다.
ex) ab*ba 일 때 aba는 일치하지 않음
3. 코드
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
int N = Integer.parseInt(br.readLine());
st = new StringTokenizer(br.readLine(), "*");
String prefix = st.nextToken();
String suffix = st.nextToken();
for (int i = 0; i < N; i++) {
String input = br.readLine();
if (input.length() < prefix.length() + suffix.length()) {
bw.write("NE\n");
} else if (input.startsWith(prefix) && input.endsWith(suffix)) {
bw.write("DA\n");
} else {
bw.write("NE\n");
}
}
bw.flush();
}
}
4. 후기
'코딩테스트 준비 > 백준' 카테고리의 다른 글
[백준] 1924번 - 2007년 [Java] (0) | 2024.12.08 |
---|---|
[백준] 2948번 - 2009년 [Java] (0) | 2024.12.08 |
[백준] 15688번 - 수 정렬하기 5 [Java] (0) | 2024.12.06 |
[백준] 11931번 - 수 정렬하기 4 [Java] (0) | 2024.12.06 |
[백준] 10989번 - 수 정렬하기 3 [Java] (0) | 2024.12.06 |