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

mad__man님의 프로필 이미지
mad__man

작성한 질문수

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

1-L

1940 주몽 시간복잡도

해결된 질문

작성

·

333

1

http://boj.kr/7e9d3dcea50f42d6b98de1ab7d2db841

1.선생님 풀이를 보면 문제를 2중 For문으로 해결하셨는데,

n의 범위가 o<n<=15000 인데, 이렇게 되면

최악의 경우 시간복잡도는 O(n^2)이고 -> 2억2500번

제한시간이 2초니까

2억번안에 해결이 안되서, 시간초과 오류가 나올 것 같은데 pass 되는게 신기합니다 .

  1. 제 풀이는 재귀함수로 풀었는데 이또한 시간복잡도를 구해보지는 않았지만, 시간초과가 아슬아슬할 것 같은데 넉넉하게 380ms로 통과하는게 의아합니다.

답변 1

0

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

안녕하세요 5102님 ㅎㅎ

2억번안에 해결이 안되서, 시간초과 오류가 나올 것 같은데 pass 되는게 신기합니다 .

>> 네 보통은 2억번은 시간초과가 나기도 합니다. 다만 이는 문제마다 다르기 때문에 보통은 ~~ 이라고 알고 계시는게 좋습니다. 사실 이 문제는 투포인터로 풀어야 조금 더 빠르게 풀 수 있는 문제입니다. 다만 1주차때 투포인터는 배우지 않고, 시간초과가 날 것같아도 무식하게 먼저 시도해보는게 좋다. 라는 취지로 넣은 문제이자 코드입니다.

 

감사합니다.

mad__man님의 프로필 이미지
mad__man

작성한 질문수

질문하기