728x90
1. 문제
15904번: UCPC는 무엇의 약자일까?
첫 번째 줄에 알파벳 대소문자, 공백으로 구성된 문자열이 주어진다. 문자열의 길이는 최대 1,000자이다. 문자열의 맨 앞과 맨 끝에 공백이 있는 경우는 없고, 공백이 연속해서 2번 이상 주어지는
www.acmicpc.net
첫 번째 줄에 입력으로 주어진 문자열을 적절히 축약해 "UCPC"로 만들 수 있으면 "I love UCPC"를 출력하고, 만들 수 없으면 "I hate UCPC"를 출력한다.
2. 풀이
정규식을 활용했다.
정규식에서 .은 모든 문자를 의미하고, *은 0번 이상 무한대 반복한다는 의미다.
따라서 ".*U.*C.*P.*C.*"라는 정규식을 이용해 매칭되는지 확인했다.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
if(in.readLine().matches(".*U.*C.*P.*C.*")){
System.out.println("I love UCPC");
}else{
System.out.println("I hate UCPC");
}
}
}
3. 결과
[a-zA-Z ]*U[a-zA-Z ]*C[a-zA-Z ]*P[a-zA-Z ]*C[a-zA-Z ]*
에서
.*U.*C.*P.*C.*
로 변경해서 다시 제출했다.
'코딩테스트 > BOJ' 카테고리의 다른 글
[BOJ] 5525 IOIOI - JAVA (0) | 2023.06.01 |
---|---|
[BOJ] 14725 개미굴 - JAVA (0) | 2023.05.31 |
[BOJ] 1197 최소 스패닝 트리 - JAVA (0) | 2023.05.28 |
[BOJ] 3055 탈출 - JAVA (1) | 2023.05.27 |
[BOJ] 1300 K번째 수 - JAVA (0) | 2023.05.26 |
댓글