Asimptotiklerin hesaplanması - 9
                                  
                                    
       
    
                                   
                                  Задача
                                  Aşağıdaki kod için asimptotiği bulun:
#include <bits/stdc++.h>
std kullanarak ad alanı;
int ana()
{
int n, m;
vektör < vektör<int açıklık>> > up1(n, vektör <int>(m));
int ve = 0;
için (int ve = 1; i <= n; i++)
{
vektör <int> L(m + 1, 1< /span>), R(m + 1, m);
yığın <int>q;
için (int j = 1; j <= m; j++)
{
while (!q.empty() && up1 [i][j] < up1[i][q.top()])
{
R[q.top()] = j - 1;
q.pop();
}
qpush(j);
}
while (!q.empty())
q.pop();
için (int j = m; j >= 1; j--)
{
while (!q.empty() && up1 [i][j] < up1[i][q.top()])
{
L[q.top()] = j + 1;
q.pop();
}
qpush(j);
}
için (int j = 1; j <= m; j++)
ans = max(ans, up1[i][j] * (R[j] < açıklık stili="renk:#666666">- L[j] + 1));
}
cout << ans;
dönüş 0;
}
 
1) O(n+m)      2) O(nm)       3) O(n^2*m)      4) O(n*m^2)
                              
 
           
                               
                               
                                        Выберите правильный ответ, либо введите его в поле ввода
                              Комментарий учителя