Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- using namespace std;
- int main()
- {
- int n;
- cin>>n;
- int niza[n+1];
- vector<int>towers;
- for (int i=0;i<n;i++)
- {
- cin>>niza[i];
- }
- for(int i=0;i<n;i++)
- {
- int pozicija = (int) (lower_bound(towers.begin(), towers.end(), niza[i] + 1) - towers.begin());
- if(pozicija >= 0 and pozicija < (int) towers.size()) {
- towers[pozicija] = niza[i];
- }
- else {
- towers.push_back(niza[i]);
- }
- }
- cout<<towers.size();
- return 0;
- }
- /*
- 5
- 3 8 2 1 5
- Tower I: 1
- Tower II: 5
- Tower III: 5
- Tower IV: 6
- Tower V: 7
- .
- .
- .
- odi od levo kon desno, proveri dali moze da se postavi nekade tower so pomala golemina, ako moze postavi go, vo sportivno zapocni nov
- */
Advertisement
Add Comment
Please, Sign In to add comment