[C++][백준 9996] 한국이 그리울 땐 서버에 접속하지

PublicMinsu·2023년 9월 12일
0

문제

접근 방법

반복문으로도 해결할 수 있는 문제겠지만 정규 표현식 연습을 위해 정규 표현식을 사용해 봤다.

코드

#include <iostream>
#include <regex>
#include <string>
using namespace std;
int main()
{
    ios::sync_with_stdio(0), cin.tie(0);
    int N;
    string pattern, input;
    cin >> N;
    cin >> pattern;
    pattern.replace(pattern.find("*"), 1, "\\w*");
    regex re(pattern, regex::optimize);
    while (N--)
    {
        cin >> input;
        if (regex_match(input, re))
            cout << "DA";
        else
            cout << "NE";
        cout << "\n";
    }
    return 0;
}

풀이

패턴을 반복문으로 해결했었는데 다른 사람 풀이를 보니 find와 replace를 사용했다. 문자열에 취약하다는 것을 다시 한번 깨달은 느낌이다.
\w가 알파벳+숫자인 것 또한 알게 됐다.

profile
연락 : publicminsu@naver.com

0개의 댓글