답변 1
0
안녕하세요 재민님 ㅎㅎ
조금 다듬어 봤는데요.
주석 참고 부탁드립니다.
#include<bits/stdc++.h>
using namespace std;
int n;
string pattern, str, head, tail;
// 65 - 90 / 97- 122
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cin >> n >> pattern;
auto star = pattern.find('*'); // find의 반환값은 auto로 받아야 합니다. size_t또는
head = pattern.substr(0,star);
tail = pattern.substr(star+1); // 밑의 디버깅 코드 삭제
for(int i = 0; i < n; i ++){
cin >> str;
if(str.size() >= head.size() + tail.size()){ // >= 가 되어야 하지 않을까요?
if( str.substr(0,head.size()) == head && str.substr(str.size() - tail.size() ) == tail ){
cout << "DA" << "\n";
}else cout << "NE"<< "\n";
}else cout << "NE"<< "\n";
}
return 0;
}
//g++ -std=c++14 -Wall a.cpp -o test.out
//./test.out
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.