Cod sursa(job #1746186)

Utilizator Y0da1NUME JMECHER Y0da1 Data 22 august 2016 19:19:13
Problema Subsir crescator maximal Scor 35
Compilator cpp Status done
Runda Arhiva educationala Marime 0.95 kb
#include <fstream>
#include <iostream>
#include <vector>
using namespace std;
int n, a[100002];
int binsearch(vector <int> &v, int l, int r, int key)
{
    while(r-l>1)
    {
        cout<<"hyfdhf"<<endl;
        int m=l+(r-l)/2;
        if(v[m]>=key)
            r=m;
        else
            l=m;
    }
    return r;
}
int Lis(int * v)
{
    if(!n)
        return 0;
    vector <int> q (n, 0);
    int length=1;
    q[0]=v[0];
    for(int i=1;i<n;++i)
    {
        cout<<"cv";
        if (v[i] < q[0])
            q[0]=v[i];
        else if (v[i] > q[length-1])
        {
            q[length]=v[i];
            ++length;
        }
        else
            q[binsearch(q, -1, length-1, v[i])]=v[i];

    }
    return length;
}
int main()
{
    ifstream g ("scmax.in");
    ofstream h ("scmax.out");
    g>>n;
    for(int i=0;i<n;i++)
        g>>a[i];
    h<<Lis(a);
    g.close();
    h.close();
    return 0;
}