인프런 커뮤니티 질문&답변

Jaemin An님의 프로필 이미지
Jaemin An

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

1-G

1-G 질문입니다.

작성

·

225

0

어느 부분을 고쳐야할까요?

http://boj.kr/27d25d91cf814662acfc6944406fbd32

답변 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점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


Jaemin An님의 프로필 이미지
Jaemin An

작성한 질문수

질문하기