2

My gut tells me the time-complexity of the following code is simply O(n^2). However, I'm not convinced, thinking it could possibly be O(n^3):

cin >> n;
sum = 0;
for (int i = 0; i < n; i++)
    for (int j = 0; j < n * n; j++)
        sum++;

Can anyone provide a distinction, and why?

Thanks in advance.

Raphael
  • 73,212
  • 30
  • 182
  • 400
user29291
  • 23
  • 2

1 Answers1

2

Hint: What is the value of sum at the end of the code, as a function of $n$? If it is $s$ then the fifth line must have been run exactly $s$ times.

Yuval Filmus
  • 280,205
  • 27
  • 317
  • 514