josiftepe

Untitled

Oct 31st, 2020
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.87 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4. int main()
  5. {
  6.        int n;
  7.        cin>>n;
  8.        int niza[n+1];
  9.        vector<int>towers;
  10.  
  11.        for (int i=0;i<n;i++)
  12.        {
  13.            cin>>niza[i];
  14.        }
  15.  
  16.        for(int i=0;i<n;i++)
  17.        {
  18.            int pozicija = (int) (lower_bound(towers.begin(), towers.end(), niza[i] + 1) - towers.begin());
  19.            if(pozicija >= 0 and pozicija < (int) towers.size()) {
  20.                towers[pozicija] = niza[i];
  21.            }
  22.            else {
  23.                towers.push_back(niza[i]);
  24.            }
  25.  
  26.        }
  27.   cout<<towers.size();
  28.  
  29.  
  30.     return 0;
  31. }
  32. /*
  33.  
  34.  5
  35.  3 8 2 1 5
  36.  
  37.  Tower I: 1
  38.  Tower II: 5
  39.  Tower III: 5
  40.  Tower IV: 6
  41.  Tower V: 7
  42.  .
  43.  .
  44.  .
  45.  odi od levo kon desno, proveri dali moze da se postavi nekade tower so pomala golemina, ako moze postavi go, vo sportivno zapocni nov
  46.  
  47.  */
  48.  
Advertisement
Add Comment
Please, Sign In to add comment