인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

융의님의 프로필 이미지

작성한 질문수

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

1-M

1 - M 반례

해결된 질문

작성

·

70

·

수정됨

0

https://www.acmicpc.net/source/share/feaa43337ef8427293d0e4111b87b156

안녕하세요. 제가 작성한 코드가 통과되지 못하는 이유를 알고싶은데 음 접근 방식 부터가 잘못된거였을까요??

그리고 매번

큰돌님 코드 보기 전에 제가 스스로 문제 풀어봤을 때 너무 코드가 다르게 나오는데,

 

제가 스스로 풀 때 시도했던 코드도 통과시키려고 노력하기보다

큰돌님 코드로 연습하는 것이 더 효율적일까요?

 

제 코드를 통과시키려고 시간을 투자하는 것보다, 제 접근방식?은 버리고

그 시간에 큰돌님 코드로 반복 연습하고, 또 다른 문제를 푸는 게 좋을까요

답변 2

1

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 ㅎㅎ

이문제를 계속해서 전체순회를 통해서 하는 생각은 괜찮지만

단어의 길이는 2와 100,000사이이며, 모든 단어 길이의 합은 1,000,000을 넘지 않는다.

 

문제 범위를 보시면 너무나도 시간복잡도가 큰 것을 알 수 있습니다.

이런 짝짓기 문제는 stack을 사용하는 것을 염두해두고 코드를 짜는게 좋습니다.

 

큰돌님 코드 보기 전에 제가 스스로 문제 풀어봤을 때 너무 코드가 다르게 나오는데,

-> 지금 단계는 실버 - 브론즈 수준이라고 생각합니다. 이수준은 알고리즘 개념자체가 아직 숙지가 안된 수준이니 알고리즘 개념을 " 아 모르는 구나". 하고 -> 제 코드들을 받아들이시면 됩니다.

 

제 코드를 통과시키려고 시간을 투자하는 것보다, 제 접근방식?은 버리고

-> 적당히는 투자하셔야 합니다. 실버 - 브론즈 문제는 30분정도는 고민할 필요가 있습니다. 이부분은 교안내에 서술했으니 참고부탁드립니다.

교안 : 1.16 알고리즘을 공부하는 자세.

 

고민 -> 시도 -> 제강의 및 코드 참고 공부 의 반복이라고 보시면 됩니다.

 

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

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

감사합니다.

강사 큰돌 올림. 

 

0

인프런 AI 인턴님의 프로필 이미지

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

코드가 통과되지 않는 이유는 여러 가지가 있을 수 있습니다. 작성하신 코드에서 반례가 발생할 가능성이 있는 부분을 찾는 것이 중요합니다. 하지만 링크만으로 분석하기 어려운 경우, 대표적인 실패 원인은 다음과 같습니다:

  1. 엣지 케이스에 대한 고려 부족: 테스트 케이스에서 다루지 않는 특수한 경우들이 있을 수 있습니다.
  2. 알고리즘의 시간 복잡도: 입력 크기에 따라 시간이 초과될 수 있습니다.
  3. 로직의 불완전: 문제 조건을 충분히 만족하지 않는 부분이 있을 수 있습니다.

큰돌님의 코드와 비교할 때, 본인의 코드가 다르게 나오는 것은 접근 방식의 차이일 수 있습니다. 큰돌님의 코드는 문제가 요구하는 해결 방법을 철저히 반영했을 가능성이 높으므로, 먼저 완전히 이해한 후 본인의 아이디어와 비교해 보시는 것이 좋습니다. 학습 초기에는 정답이 나오는 코드와 본인의 코드를 비교하며 차이를 이해하는 것이 많은 도움이 됩니다.

이와 관련하여 아래의 링크를 참고하시면 도움이 될 수 있습니다:

해당 답변들이 직접적으로 문제를 해결해주지는 않겠지만, 접근 방식을 어떻게 수정해야할지를 파악하고 개선하는데 도움을 줄 수 있습니다.

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

융의님의 프로필 이미지

작성한 질문수

질문하기