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

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

dddkh님의 프로필 이미지

작성한 질문수

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

1-A

1-A 관련 질문있습니다.

작성

·

68

0

안녕하십니까

http://boj.kr/ec5eb19fa58d4c81a3b511d53ee8bf34

위 풀이는 제가 푼 코드인데 통과는 했지만 효율적인 코드인지는 판단이 안 되어 이렇게 풀어도 괜찮은지 여쭙고자 질문 남깁니다.

 

그리고, 배열을 사용할 때 array를 써야할지 vector를 써야할지 감이 안 잡히는 경우가 종종 있는데.. 어떤 기준을 잡고 쓰면 좋을까요??

 

좋은 강의 감사드립니다.

답변 기다리겠습니다:)

답변 2

0

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

안녕하세요 ㅎㅎ

코드가 깔끔하고 좋네요. 잘 짜셨습니다.

 

, 배열을 사용할 때 array를 써야할지 vector를 써야할지 감이 안 잡히는 경우가 종종 있는데.. 어떤 기준을 잡고 쓰면 좋을까요??

-> 보통은 array를 써주세요. 다만 크기가 정해져있지 않거나 동적으로 push_back을 해야하는 상황일 때는 vector를 쓰는게 좋습니다.

 

새해복 많이 받으세요

감사합니다.

0

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

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

올려주신 문제에 대해 답변 드리겠습니다.

우선, 1-A 문제 관련 질문에 대해 말씀드리자면, 코드는 통과했으니 논리적으로는 맞는 풀이인 것으로 보입니다. 그러나 코드의 효율성은 입력의 크기나 사용된 알고리즘에 따라 다를 수 있습니다. 일반적으로 시간 복잡도와 공간 복잡도를 고려하여 최적의 알고리즘과 자료 구조를 선택하는 것이 중요합니다.

배열(array)와 벡터(vector)의 사용과 관련해서는 다음과 같은 기준이 도움이 될 수 있습니다:

  1. 고정 크기 데이터: 배열은 고정된 크기의 데이터를 다룰 때 사용하기 적합합니다. 배열의 크기를 미리 알 수 있다면 배열을 사용하는 것이 메모리적으로 효율적일 수 있습니다.

  2. 가변 크기 데이터: 벡터는 크기가 변할 수 있는 데이터에 적합합니다. 만약 데이터의 삽입/삭제가 빈번하다면 벡터를 사용하는 것이 유리합니다.

  3. 호환성과 유연성: 벡터는 STL(Standard Template Library)에 포함되어 있는 다양한 기능적인 인터페이스와 함께 제공되기 때문에 다양한 알고리즘과 함께 더 유연하게 사용할 수 있습니다.

  4. 성능 고려: 벡터는 배열에 비해 메모리 재할당이나 복사 등으로 성능에 영향을 줄 수 있습니다. 따라서 성능이 중요한 경우에는 특정한 필요에 따라 선택해야 합니다.

관련하여 효율성과 자료 구조 선택의 예시가 포함된 질문 및 답변이 있어, 아래 링크를 참고하시면 도움이 될 것입니다.

강의 내용이나 문제와 관련하여 보다 상세한 코드 리뷰와 조언이 필요하시다면, 강의를 통해 얻은 지식을 기반으로 계속해서 사용해 보시는 것도 좋은 방법입니다.

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

dddkh님의 프로필 이미지

작성한 질문수

질문하기