BRACKETS2 오답 : 도움 요청드립니다 aloha 하기 코드로 안되는 TC를 아직 확인하지 못하고있습니다. 어떤 경우가 안되는걸까요? // Name : brackets2.cpp #include <iostream> #include <string.h> #define MAX_LEN 10000 using namespace std; int cnt = 0; char** array = NULL; void getInput() { cin >> cnt; array = new char*[cnt]; for (int i = 0; i < cnt; i++) { array[i] = new char[MAX_LEN]; cin >> array[i]; } } bool checkInner(const char* buf, int& startPos){ char target = buf[startPos]; bool ret = false; target = (target == '(' ? ')' : target == '{' ? '}' : target == '[' ? ']' : 0); if(target <= 0){ return ret; } int len = strlen(buf); for(startPos++; startPos<len; startPos++){ if(buf[startPos] == target){ return true; }else{ ret = checkInner(buf, startPos); if(!ret){ break; } } } return ret; } void doIt() { for (int i = 0; i < cnt; i++) { int len = strlen(array[i]); bool ret = false; for(int j=0; j<len; j++){ ret = checkInner((const char*)array[i], j); if(!ret){ break; } } cout << (ret ? "YES" : "NO") << endl; } } int main() { getInput(); doIt(); return 0; } 11년 전
2개의 댓글이 있습니다. astein 입력의 마지막이 ()로 끝나면 무조건 YES를 출력하겠네요... 11년 전 link aloha 좋은지적 감사드립니다. 그런데 해당부분 수정하였는데도 오답나오니 답답하네요 11년 전 link 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
aloha
하기 코드로 안되는 TC를 아직 확인하지 못하고있습니다.
어떤 경우가 안되는걸까요?
11년 전