Cod sursa(job #2942987)

Utilizator Stormtrooper-007Vartic Rihard Stormtrooper-007 Data 20 noiembrie 2022 13:59:00
Problema Sortare prin comparare Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <bits/stdc++.h>

using namespace std;
int v[500000];
int n;
void qsort(int v[],int be,int en)
{
  int pivot=v[be+rand()%(en-be+1)];
  int c1=be,c2=en;

  while(c1<c2)
  {
    while(v[c1]<pivot)
    {
      c1++;
    }
    while(v[c2]>pivot)
    {
      c2--;
    }
    swap(v[c1],v[c2]);
    c1++;
    c2--;
  }
  if(be<c2)
    qsort(v,be,c2);
  if(en>c1)
    qsort(v,c1,en);
}
int main()
{
    ifstream cin("algsort.in");
    ofstream cout("algsort.out");
    cin>>n;
    for(int i=0;i<n;i++)
    {
      cin>>v[i];
    }
    qsort(v,0,n-1);
    for(int i=0;i<n;i++)
    cout<<v[i]<<" ";
    return 0;
}