시간 복잡도 관련으로 질문 드립니다
안녕하세요 강사님, 강의 잘 듣고 있습니다!
다름이 아니라 제가 짠 코드로도 100점이 나오긴 하는데, 강사님이 설명해주신 코드와는 방식이 조금 달라 해당 코드의 시간 복잡도에 대해 여쭤보고자 질문 드립니다.
#include <iostream>
using namespace std;
int main()
{
int count = 0;
int max = 0;
int input;
cin >> input;
for (int i = 1; i <= input; i++)
{
count = 0;
max = i;
for (int j = 1; j <= max; j++)
{
if (i % j == 0)
{
if ((i / j) != j)
count++;
max = (i / j) - 1;
count++;
}
}
cout << count << ' ';
}
cout << endl;
}
시간 복잡도 O(n^2)의 코드와 유사한데, for문을 한 번 계산할 때마다 max 값을 줄여 약수의 절반을 찾아내면 다음 for문으로 넘어가는 방식의 코드예요.
실제로 for문이 도는 건 원래의 값보다 훨씬 적긴 한데 O(logn * n)보다는 오래 걸리는 것처럼 보여서... 이 코드의 시간 복잡도도 O(n^2)이 맞나요?
답변 1
테스트 케이스 질문
0
391
1
병합정렬 시간복잡도 질문
0
476
1
41.연속된 자연수의 합 문제풀이에서 수학적인 원리를 모르고 있습니다.
0
1368
2
질문드립니다.
0
392
1
질문드립니다!
0
438
1
dev 프로그램 질문
0
277
1
문제가 이해가 안되요
0
382
1
4번 나이차이 문제 접근법 질문 드립니다.
0
310
1
source file not compiled
0
1076
3
59번 질문드립니다.
0
378
1
25번 문제 질문
0
352
1
4. 나이차이 문제 질문입니다.
0
378
1
90번 라이언 킹 심바 1번 테스트 케이스
0
473
1
71번 문제 전역 변수 질문 있습니다
0
367
1
75번, 79번 priority_queue관련
1
362
1
75.최대 수입 스케줄
0
404
2
복면산 정답의 수
0
438
1
테스트 케이스에 대해서
0
452
1
수업 내용 질문입니다!
1
237
1
풀어보면 좋은 문제 목록 - 2580 스토쿠 DFS 질문입니다!!
0
848
2
12. 플로이드-와샬(그래프 최단거리) . 27:25초
0
259
1
다른 풀이 방식
0
320
1
크루스칼 vs 프림
0
316
1
숫자 총개수 small 질문있습니다.
0
246
1





