인프런 커뮤니티 질문&답변
for 문 사용 시 조건문으로 break할 때의 시간 복잡도
해결된 질문
작성
·
333
0
챕터 3-5의 수열의 합을 먼저 풀어봤을 때 제가 작성했던 코드입니다. for 문을 두 번 사용해서 그런지 채점시 3번부터 time out이 떴습니다. 두 번 째 for 문에서 조건을 충족하는 경우 break를 써서 시간 복잡도를 줄여줬다고 생각했는데 왜 시간 초과가 뜨는 지 모르겠습니다. 좋은 강의 항상 고맙습니다.
cnt=0
for i in range(n):
if a[i] > m:
continue
elif a[i] == m:
cnt += 1
else:
for j in range(i+1, n+1):
if sum(a[i:j]) > m:
break
if sum(a[i:j]) == m:
cnt+=1
break




