inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

1-M

1-M 벡터 사이즈 체크하면 오류 발생하는 이유

100

Yujin Kang

작성한 질문수 1

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 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와 같은 경우 불필요하게 끝까지 확인해야하니까... 필요한 부분이라고 생각했는데 어떤 부분을 잘못 생각한건지 알려주실 수 있을까요?

 

 

c++ 코딩-테스트

답변 2

1

큰돌

안녕하세요 유진님 ㅎㅎ

전반적으로 좋은 논리입니다.

이 때문에 반례찾느라 시간좀 들었어요 ㅎㅎ

1
ABABBABAABBA

유진님의 코드는 이 반례를 해결하지 못합니다. GOOD이 되어야 하고 카운팅되어야 합니다.


또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


0

Yujin Kang

이해됐습니다!! 감사합니다!

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

Yujin Kang님이 질문해 주신 내용은 벡터의 사이즈를 체크하는 코드에서 문제점이 발생하는 이유에 대한 것입니다. 주로 처리해야 할 문자열이 ‘A’와 ‘B’로 이루어져 있는 경우에 대한 로직이 고려 대상입니다.

질문에서 제시한 코드에서는 else if(s1.size()>2) break; 문장이 문자열의 처리를 빨리 끝내기 위한 조건으로 사용되고 있습니다. 이 조건은 일반적으로 문자열의 앞부분에서 이미 충분히 판단할 수 있는 경우 즉시 종료하도록 설정한 것입니다. 이와 같은 설정이 문제가 되는 이유는 특정한 시점에서 문자열이 완벽히 분석되지 않았음에도 불구하고, 잘못된 규모의 벡터 크기를 사용하여 미리 최종 결론에 도달하려고 시도했기 때문일 수 있습니다.

여기서는 좋지 않은 단어에 대한 정의를 좀 더 정확하게 파악할 필요가 있습니다. ‘좋은 단어’의 조건이 “조금이라도 규칙에서 어긋나면 안 되는” 정도의 엄격성을 가진다면, 모든 가능성을 검토해야 할 필요가 있습니다. Yujin Kang님의 코드는 가능한 귀찮은 처리를 피하기 위한 것이지만 반대로 필요한 검토를 채 하지 못하여 오히려 문제를 야기하는 것으로 보입니다.

비슷한 문제와 답변, 고려 방법에 대한 사례를 확인해 보신다면 다음 링크를 추천드립니다:
- C++ Vector 사용 시 주의 사항: 관련된 내용으로 C++의 벡터 사용에 관한 질문과 답변을 확인해 보세요.

이 링크에서도 벡터 사용 시 발생할 수 있는 문제와 해결 방법을 제시하고 있습니다. 특히, 벡터와 관련된 알고리즘을 구현하며 발생할 수 있는 일반적인 실수를 다루고 있습니다.

저는 질문자님의 이해를 돕고자 기존의 인프런 커뮤니티 답변을 활용하여 유사한 사례를 추천해드렸습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점 있으시면, 이어서 질문해 주세요. 지식공유자님께서 곧 답변해 주실 것입니다.

6-H 체점 관련 질문

0

8

0

채점서버 연결 관련 질문입니다

0

31

1

삼성 s직군

0

31

0

삼성 코테 없어짐

0

81

1

코딩살구클럽 가입부탁드립니다

0

40

2

코딩살구클럽 가입 요청 확인부탁드립니다

0

35

2

5-S 테스트 케이스 질문

0

37

2

코살 문제풀이 환경

0

54

2

2 - T 오큰수 문제가 있는 것 같습니다.

0

46

1

추천 추가문제들

0

44

2

프로그래머스 코테 환경 관련해서 질문드립니다.

0

50

2

해당 문제에 대한 채점이 코딩살구클럽에서 올바르게 처리되지 않습니다.

0

44

2

균형 이진 트리 설명 시 높이 숫자

0

33

2

4-H 질문드립니다.

0

37

2

1-K 질문드립니다.

0

43

2

대기업 인적성 시험 질문

0

43

2

4-C 질문드립니다

0

43

2

[수학숙제 / BOJ 2870] 채점 서버 오작동

0

40

1

코테 준비 질문

0

58

1

살구클럽가입 요청드려요

0

42

2

1-I 문제 질문

0

46

2

코딩살구클럽 가입

0

61

2

AI 코딩 도구 사용 시 학습 방법 조언

0

56

2

코딩살구클럽 오류

0

67

2