1-M 벡터 사이즈 체크하면 오류 발생하는 이유
97
작성한 질문수 1
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
안녕하세요
저는 벡터로 고민해서 풀었는데 강의 보고 수정해서 아래와 같이 정답을 얻었습니다.
http://boj.kr/cf7d8a2646b44ded93eead10652c3faa
기존 제 코드랑 비교하니 이 부분이 문제 였는데요
else if(s1.size()>2) break;
http://boj.kr/7069ece2a56f46f49d7a764d5457677f
단어는 어차피 A와 B로만 이루어져있고 같은 단어가 들어오면 pop해서 사이즈가 줄어들어 사이즈가 2가 넘을 이유는 없다고 생각하여 넣은 코드입니다.
1개차이로 다른 단어가 들어오면 좋은단어 조건이 안되니까 사이즈 체크한건데 왜 오류가 발생할까요?
(예를들어 ABA인 경우같이 B다음 1개차이로 A가 들어오는 경우)
저는 저 코드를 넣지 않으면 ABAAAAAAAAAAAAA와 같은 경우 불필요하게 끝까지 확인해야하니까... 필요한 부분이라고 생각했는데 어떤 부분을 잘못 생각한건지 알려주실 수 있을까요?
답변 2
1
안녕하세요 유진님 ㅎㅎ
전반적으로 좋은 논리입니다.
이 때문에 반례찾느라 시간좀 들었어요 ㅎㅎ
1
ABABBABAABBA
유진님의 코드는 이 반례를 해결하지 못합니다. GOOD이 되어야 하고 카운팅되어야 합니다.
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
0
안녕하세요, 인프런 AI 인턴입니다.
Yujin Kang님이 질문해 주신 내용은 벡터의 사이즈를 체크하는 코드에서 문제점이 발생하는 이유에 대한 것입니다. 주로 처리해야 할 문자열이 ‘A’와 ‘B’로 이루어져 있는 경우에 대한 로직이 고려 대상입니다.
질문에서 제시한 코드에서는 else if(s1.size()>2) break; 문장이 문자열의 처리를 빨리 끝내기 위한 조건으로 사용되고 있습니다. 이 조건은 일반적으로 문자열의 앞부분에서 이미 충분히 판단할 수 있는 경우 즉시 종료하도록 설정한 것입니다. 이와 같은 설정이 문제가 되는 이유는 특정한 시점에서 문자열이 완벽히 분석되지 않았음에도 불구하고, 잘못된 규모의 벡터 크기를 사용하여 미리 최종 결론에 도달하려고 시도했기 때문일 수 있습니다.
여기서는 좋지 않은 단어에 대한 정의를 좀 더 정확하게 파악할 필요가 있습니다. ‘좋은 단어’의 조건이 “조금이라도 규칙에서 어긋나면 안 되는” 정도의 엄격성을 가진다면, 모든 가능성을 검토해야 할 필요가 있습니다. Yujin Kang님의 코드는 가능한 귀찮은 처리를 피하기 위한 것이지만 반대로 필요한 검토를 채 하지 못하여 오히려 문제를 야기하는 것으로 보입니다.
비슷한 문제와 답변, 고려 방법에 대한 사례를 확인해 보신다면 다음 링크를 추천드립니다:
- C++ Vector 사용 시 주의 사항: 관련된 내용으로 C++의 벡터 사용에 관한 질문과 답변을 확인해 보세요.
이 링크에서도 벡터 사용 시 발생할 수 있는 문제와 해결 방법을 제시하고 있습니다. 특히, 벡터와 관련된 알고리즘을 구현하며 발생할 수 있는 일반적인 실수를 다루고 있습니다.
저는 질문자님의 이해를 돕고자 기존의 인프런 커뮤니티 답변을 활용하여 유사한 사례를 추천해드렸습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점 있으시면, 이어서 질문해 주세요. 지식공유자님께서 곧 답변해 주실 것입니다.
3-F 채점 관련 질문
0
4
0
BFS, DFS 활용이 되는 상황에서의 방향성
0
10
2
코딩살구클럽 승인
0
17
2
코딩살구클럽승인
0
15
2
코딩살구클럽 승인
0
43
2
3-D 관련 질문
0
33
2
코살구 회원가입 문의
0
38
2
코살구 로그인 문제
0
60
2
3-A 문제 풀이 관련 질문
0
51
3
2-O 질문 있습니다
0
38
2
2-T 문제에 관한 질문
0
39
2
코딩 살구 클럽 접속 및 사용방법 문의
0
57
2
안녕하세요~. 현재 코살코딩클럽 사이트가 접속이 안됩니다~
0
64
2
코딩살구클럽 로그인문제
0
74
3
코딩 살구 클럽 로그인 문제
0
79
2
2-J 채점관련 질문
0
65
3
코딩 살구 클럽 Python 지원 가능 여부
0
77
1
살구클럽 아이디 없음 문제
0
76
1
1-O 코딩살구클럽 채점관련 질문
0
60
2
히든 테스트 케이스가 사라졌습니다
0
57
1
채점서버 혹시 다른 언어 지원도 가능하게 해주실 수 있나요
1
74
2
살구 클럽 채점 관련 문의(테스트 케이스)
0
66
2
1-H 문제 채점하기 오류
0
58
3
코딩살구클럽 2주차 2-L 문제 채점하기 오류
0
52
2





