Сложность времени - Тета (log (n) ^ 3).
Пусть T = floor (log_2 (n)). Ваш код может быть переписан как:
int m = 0;
for (int i = 0; i <= T; i++)
for (int j = 1; j <= i+1; j++)
for (int k = 1; k <= j; k++)
m++;
Что, очевидно, является тэтой (Т ^ 3).
Редактировать : Вот промежуточный шаг для переписывания вашего кода. Пусть a = log_2 (i). a всегда целое число, потому что я степень 2. Тогда ваш код явно эквивалентен:
m=0;
a=0;
while (a<=log_2(n))
{
a+=1;
for (j=1;j<=a;j++)
for (k=1;k<=j;k++)
m++;
}
Другие изменения, которые я сделал, называли floor (log_2 (n)) как T, a как i и использовали цикл for вместо while.
Надеюсь, теперь все ясно.