강의로 돌아가기
김재욱

시간초과

시간복잡도가 O(nlogn)인거같은데 123,56에서 계속 시간초과가 뜹니다.
시간복잡도 계산이 잘못된건가요?

작성중인 코드―solution.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
def solution(numbers):
    ans=[]
    for i,num in enumerate(numbers):
        if i==0:
            ans.append(num)
            continue
        for j,ansnum in enumerate(ans) :
            strj = str(ansnum)
            stri = str(num)            
            tmp1 = strj+stri
            tmp2 = stri+strj

            if tmp1<tmp2:
                ##i가 더크니까 앞에넣어줘야함
                ans.insert(j,num)
                break
            if j==len(ans)-1:
                ans.append(num)
                break

    answer = ''  
    for i in ans :

        answer += str(i)

    print(answer)


    return answer
1 개의 답변
Demi

안녕하세요. 시간복잡도가 O( n2 ) 이상입니다.

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.