해결된 질문
작성
·
65
·
수정됨
0
http://boj.kr/89d59db313824c96be294e13de2e146e
의상을 1개부터 n개까지 뽑는데 의상의 종류가 n가지일 때
내가 뽑으려는 의상의 수 > n 이라면 이미 그 전 로직에 뽑혔을 것이라고 생각하고 1~의상 가짓수까지 조합을 돌렸습니다만 시간 초과가 뜹니다.
그래서 시간 복잡도를 생각해봤는데 해당 로직의 시간 복잡도는 n의 n제곱이 되기 때문에 시간 초과가 나는 걸까요?
답변 1
0
안녕하세요 저엉님 ㅎㅎ
시간 복잡도는 n의 n제곱이 되기 때문에
>> 그렇지는 않구요.
지금 보시는 것처럼 nC1, nC2, nC3..을 모두 다 구하기 때문에 -> 시간초과가 뜨는 것 같습니다.
for(int j=1;j<= uMapSize;j++)
{
Combination(-1, j, v);
}
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.