인프런 커뮤니티 질문&답변
백준 9996 문제 질문
작성
·
223
0
안녕하세요 백준 9996 문제를 풀던 중 질문이 생겨 글 남깁니다.
저는 코드를 아래와 같이 짰습니다.
#include <iostream>
using namespace std;
int main()
{
int N;
cin >> N;
string s;
cin >> s;
string s_front, s_back;
s_front = s.substr(0, s.find("*"));
s_back = s.substr(s.find("*") + 1);
for (int i = 0; i < N; i++)
{
string problem;
cin >> problem;
string p_front, p_back;
p_front = problem.substr(0, s_front.size());
p_back = problem.substr(problem.size() - s_back.size());
int possible = 0;
if (problem.size() >= s_front.size() + s_back.size())
{
if (s_front == p_front && s_back == p_back)
{
possible = 1;
}
}
if (possible == 1) cout << "DA" << "\n";
else cout << "NE" << "\n";
}
return 0;
}
결과값은 동일하게 나오는데 채점시 런타임 에러(out of range)가 납니다.
제가 놓친 부분이 있을까요?





