Cod sursa(job #416509)

Utilizator arnold23Arnold Tempfli arnold23 Data 12 martie 2010 21:18:04
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include <fstream>
#include <vector>

using namespace std;

vector<long> a;
long n,i;

int oszt(long b, long j, long &k)
{
 long t;   
 t=a[b];
 k=b;
 while(b<j)
 {
   while(b<j&&a[j]>=t) --j;
   a[k]=a[j];
   k=j;
   while(b<j&&a[b]<=t) ++b;
   a[k]=a[b];
   k=b;    
 }
 a[k]=t;
 return 0;   
}

int quick(long bal, long jobb)
{
 long koz;   
 if(bal<jobb)
 {
  oszt(bal,jobb,koz);
  quick(bal,koz-1);
  quick(koz+1,jobb);
 }   
 return 0;
}

int main()
{
 ifstream in("algsort.in"); 
 ofstream out("algsort.out");
 
 long x;
 in >> n;
 for(i=1;i<=n;++i)
 {
  in >> x;
  a.push_back(x);
 }  

 quick(0,n-1);
    
 for(i=0;i<=n-1;++i)
 {
  out << a[i] << " ";
 }       
 
 in.close();
 out.close();
    
 return 0;    
}