Cod sursa(job #350663)

Utilizator csizMocanu Calin csiz Data 25 septembrie 2009 10:50:31
Problema Sortare prin comparare Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <fstream>
#include <vector>
#include <iostream>
using namespace std;

void sort(vector<int> &v,int i,int j){
    if(i+1<j){
        int s=i+1,d=j-1;
        while(s<d){
            if(v[s]<v[i]) s++;
            else if(v[d]<v[i]) swap(v[s],v[d]);
            if(!(v[d]<v[i])) d--;
        }
        if(v[d]<v[i]){

        }else{
            d--;
        }
        swap(v[d],v[i]);

        sort(v,i,d);
        sort(v,d+1,j);
    }

}

int main(){
    ifstream in("algsort.in");
    ofstream out("algsort.out");

    vector<int> v;int n;
    in>>n;
    v.reserve(n);
    for(int i=0;i<n;i++){
        int t;in>>t;v.push_back(t);
    }

    sort(v,0,n);

    for(int i=0;i<n;i++){
        out<<v[i]<<" ";
    }
}