inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

2-T

2-T 질문있습니다!

해결된 질문

118

이정현

작성한 질문수 6

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

안녕하세요 선생님, 2-T 접근방법에 대해 질문있습니다!

문제를 읽고 우선 queue나 stack으로 풀어야겠다는 생각은 들었는데, 해당 문제가 우측으로 더 큰항목이 있는지 비교(input과 특정 항목을 비교)하는 문제이기 때문에, queue로 구현하면 queue의 front에 가장 큰 값이 들어올 경우, 이후 항목에서 오큰수를 부여할 수 있는 수열들이 들어오더라도 queue를 pop하지 못하고, pop할 수 있는 항목들을 queue를 순회해서 찾는다고 하면 시간복잡도가 O(N^2)으로 커져버리니까 스택을 사용해야겠다! 라는 사고에 따라 스택을 사용하기로 결정하면 되나요?

또 한가지 질문이 있습니다..!! 정답 배열로 정수를 출력하는 문제라고 가정하면, int배열을 사용하여 푸는 것과 벡터<int> v 에 푸시하여 사용하는 것 어떤 것이 유리한지 궁금합니다!

c++ 코딩-테스트

답변 2

0

큰돌

안녕하세요 정현님 ㅎㅎ

시간복잡도가 O(N^2)으로 커져버리니까 스택을 사용해야겠다! 라는 사고에 따라 스택을 사용하기로 결정하면 되나요?

-> 네 맞습니다. 좋은 흐름입니다.

 

정답 배열로 정수를 출력하는 문제라고 가정하면, int배열을 사용하여 푸는 것과 벡터<int> v 에 푸시하여 사용하는 것 어떤 것이 유리한지 궁금합니다!

-> 둘 다 성능상 비슷합니다. 참고로 정수를 순차적으로 int 타입으로 출력하는 것과 정답 정수를 vector에 담아서 한꺼번에 출력하는 것의 경우 전자가 더 성능상 좋습니다.

 

감사합니다.

 

 

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 이정현님 질문에 대해 다음과 같이 답변드리겠습니다.

질문하신 C++ 코딩 테스트 문제 접근 방법과 관련하여, 스택과 큐의 사용에 대한 고민을 잘 정리해주셨습니다. 말씀하신 대로 큐를 사용하게 되면 특정 조건에 따라 O(N^2)의 시간복잡도가 발생할 수 있는 반면, 스택을 사용하면 효율적인 O(N) 시간복잡도로 문제를 해결할 수 있습니다. 이는 스택의 LIFO(Last In, First Out) 구조 덕분에, 현재 인덱스의 값보다 작은 값을 순차적으로 pop하여 처리할 수 있기 때문입니다. 이러한 방식은 “오큰수”와 같은 문제에서도 자주 활용됩니다.

다음은 이와 관련된 유사한 질문과 답변입니다:
- “2-T 질문드립니다.”: 벡터의 크기를 사전에 설정하지 않고 사용하면 발생하는 문제와 이를 해결하는 방법에 대해 설명한 질문입니다.

정답 배열로 정수를 출력하는 경우, int 배열벡터<int>를 사용하는 것 사이의 차이는 다음과 같습니다:
1. int 배열: 정적인 크기를 가지며, 미리 크기를 결정해야 합니다. 메모리 활용이 효율적일 수 있지만, 배열 크기 결정이 어려운 경우에는 유연성이 떨어질 수 있습니다.

  1. 벡터: 동적인 크기를 가지며, 필요에 따라 크기를 자동으로 조정합니다. 사용이 직관적이며 크기를 예측하기 어려운 경우에 특히 유용합니다. 단, 자동으로 메모리를 재할당하는 과정에서 약간의 오버헤드가 있을 수 있습니다.

결국, 초기 크기를 명확히 알 수 있으면 배열을 활용하고, 그렇지 않다면 벡터를 사용하는 것이 좋습니다.

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

2-I) 왜 이 문제가 그래프이론 카테고리에 있는지 잘 모르겠습니다.

0

30

2

2주차 개념#12 트리 순회

0

20

2

백준사이트가 종료된다고 합니다.

0

245

2

백준 서비스 종료

9

781

1

sk 하이닉스 코테 대비

0

360

2

3-G 최댓값 질문

0

50

1

모듈러 연산 값이 10이 아닌 경우도 있지 않나요?

0

82

2

3-I 코드 질문드립니다.

0

62

2

3-N 질문 있습니다.

0

66

2

학습방법

0

100

2

4-H 질문 있습니다 (코드 리뷰)

0

66

2

코딩테스트 어디까지 준비해야 하는지 질문이 있습니다.

0

166

2

2-O 반례가 무엇일지 어떤 부분이 틀렸는지 잘 모르겠습니다.

0

69

2

2주차 개념 #4-2. 인접행렬 질문있습니다.

0

64

2

1-A 문제풀이 후 궁금한 점이 생겨서 질문드립니다.

0

50

2

조합 재귀 풀이 확인 해주시면 감사하겠습니다.

0

67

2

함수별 시간복잡도

0

72

2

3-h 질문입니다.

0

49

1

안녕하세요 선생님. 시간 복잡도 4번 질문있습니다.

0

52

2

1-I 문제 질문 드립니다.

0

76

2

2-P 질문입니다.

0

56

1

mac에서 시작하기 관련

0

89

2

5-Q 질문

0

63

2

풀이 코드 질문

0

64

2