모두CBT

다음 C 코드에서 밑줄 친 ‘x=x+3;’의 수행 빈도수는? (단, n… | [7급 국가직 자료구조론] 24년 1회차 기출문제 상세 페이지

1[7급 국가직 자료구조론] 24년 1회차
다음 C 코드에서 밑줄 친 ‘x=x+3;’의 수행 빈도수는? (단, n은 0 이상의 정수이다)
void complexity(int n){
int i, j, x=0;
for(i=0; i<=n; i++) {
for(j=i; j<=n; j++)
x=x+3;
}
}
1
n(n−1)2\frac{n(n-1)}{2}
2
n(n+1)2\frac{n(n+1)}{2}
3
(n−1)(n+1)2\frac{(n-1)(n+1)}{2}
4
(n+1)(n+2)2\frac{(n+1)(n+2)}{2}
해설

밑줄 친 문장의 수행 빈도수는 (n+1)(n+2)2\dfrac{(n+1)(n+2)}{2}이다.

바깥 반복은 i = 0, 1, …, n의 n+1회이고, 안쪽 반복은 j = i부터 n까지이므로 i마다 n−i+1n-i+1회 수행된다.

∑i=0n(n−i+1)=(n+1)+n+⋯+1=(n+1)(n+2)2\sum_{i=0}^{n}(n-i+1) = (n+1)+n+\cdots+1 = \dfrac{(n+1)(n+2)}{2}

  • n(n+1)2\dfrac{n(n+1)}{2}는 1부터 n까지의 합으로, i = 0일 때의 n+1회를 빠뜨린 값이다.
  • n(n−1)2\dfrac{n(n-1)}{2}는 n = 1일 때 0이지만, 실제로는 i = 0에서 2회, i = 1에서 1회로 3회 수행된다.
  • (n−1)(n+1)2\dfrac{(n-1)(n+1)}{2}는 n = 0일 때 음수가 되어 수행 횟수가 될 수 없다(실제는 1회).

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[7급 국가직 자료구조론] 24년 1회차 25문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요7급 국가직 자료구조론 기출문제 암기장 전체 보기