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

mini98님의 프로필 이미지
mini98

작성한 질문수

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

2-S

시간복잡도와 시간제한 질문입니다.

작성

·

417

0

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

선생님께서 본 문제에서 dfs를 사용하면 연산량이 1억번이 돼서 많을수도 있다고 하셨는데, 이 문제는 시간제한이 길어서 통과가 된다고 수업에서 말씀해주셨습니다.

 

그렇다면 1만번 데이터를 O(n제곱) 알고리즘으로 연산을하면 보통 시간제한 몇 초까지 가능하다고 생각하면 될까요?

답변 2

1

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

안녕하세요 mini님 ㅎㅎ

1026999님께서 잘 말씀해주셨는데요.

이는 문제에 따른 로직 등에 따라 다릅니다.

우리가 문제에 코드를 제출하죠?

문제를 제출한 해당 사이트의 서버가 아마 우리의 코드를 채점할거에요.

여기서 우리는 그 서버에서 우리의 코드가 구동되는 시간을 알 수 있을까요?

모릅니다. ㅜㅜ..

다만 문제의 최대범위를 기반으로 시간복잡도를 계산하고 그걸 통해 문제에서 주어진 "시간제한"안에 풀 수 있는지 유추하며 시도하는 것이 중요한 것이죠.

 

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

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

감사합니다.

강사 큰돌 올림.

mini98님의 프로필 이미지
mini98
질문자

답변 주셔서 감사합니다.

1

시간복잡도가 O(n^2)인 알고리즘이 1만번의 데이터를 처리할 때, 일반적으로 1초 이내에 처리할 수 있는 경우가 많습니다.

그러나 이는 매우 상대적인 기준이며, 알고리즘의 구현 방법, 사용되는 컴퓨터의 성능, 입력 데이터의 특성 등에 따라 다를 수 있습니다.

따라서, 알고리즘의 성능을 측정하고 시간제한을 예측하려면 해당 알고리즘을 실제로 실행해보는 것이 가장 확실한 방법입니다. 또한, 알고리즘의 성능을 높이기 위해 최적화 기법 등을 적용할 수도 있습니다.

mini98님의 프로필 이미지
mini98
질문자

답변 주셔서 감사합니다.

mini98님의 프로필 이미지
mini98

작성한 질문수

질문하기