Модуль: Berechnung der asymptotischen Komplexität


Задача

9/9

Berechnung der Asymptotik - 9

Задача

Для приведенного ниже кода, найдите асимптотику:
#einschließen <bits/stdc ++.h>
verwenden des Namespace std;

int Haupt()
{
	int n, m;
	vektor < Vektor<int> > up1(n, Vektor <int>(m));
	int ans = 0;
	für (int i = 1; i <= n; i++)
	{
		vektor <int> L(m + 1, 1), R(m + 1, m);
		stapel <int> q;
		für (int j = 1; j <= m; j++)
		{
			während (!q.leer () && nach oben 1[i][j] < nach oben 1[i][q.top()])
			{
				R[q.top()] = j - 1;
				();
			}
			q.drücke(j);
		}
		während (!q.leer())
			();
		für (int j = m; j >= 1; j--)
		{
			während (!q.leer () && nach oben 1[i][j] < nach oben 1[i][q.top()])
			{
				L[q.top()] = j + 1;
				();
			}
			q.drücke(j);
		}
		für (int j = 1; j <= m; j++)
			ans = max(ans, up1[i][j] * (R[j] - L[j] + 1 < /spanne>));
	}
	cout << ans;
	rückgabe 0;
}

1) O (n + m) & nbsp; & nbsp; & nbsp; 2) O (Nanometer)         3) O(n ^2 * m) & nbsp;   & nbsp; 4) O (n * m ^ 2)

Выберите правильный ответ, либо введите его в поле ввода

Комментарий учителя