Cod sursa(job #175918)

Utilizator me_andyAvramescu Andrei me_andy Data 10 aprilie 2008 16:35:29
Problema Subsir crescator maximal Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<fstream.h>
#define Nmax 1600

ifstream fin("scmax.in");
ofstream fout("scmax.out");

int a[Nmax],b[Nmax],na,nb;

int poz;

void cautbin(int val)
 {
 int st=1,end=nb,mij;poz=-1;
 while(st<=end)
  {
  mij=(st+end)/2;
  if(b[mij]>=val)
   {
   poz=mij;
   end=mij-1;
   }
  else st=mij+1;
  }
 }

int main()
 {
 int i;
 fin>>na;
 for(i=1;i<=na;i++)
  {
  fin>>a[i];
  cautbin(a[i]);
  if(poz==-1)
   {
 //  if(nb==130) {cout<<"Heeeeei..\n";
 //		cin>>poz;}
   b[++nb]=a[i];
   }
  else
   b[poz]=a[i];
  }
 fout<<nb<<'\n';
 return 0;
 }